add puppet manifests for rubbos client module
[bottlenecks.git] / testsuites / rubbos / puppet_manifests / modules / rubbos_monitor / manifests / rubbos_monitor_on.pp
index d396f30..b9dad5e 100644 (file)
@@ -16,20 +16,50 @@ class rubbos_monitor::rubbos_monitor_on {
   # Declare some variables
   $rubbos_app           = $params::rubbos_params::rubbos_app
   $rubbos_home          = $params::rubbos_params::rubbos_home
+  $rubbos_os_username   = $params::rubbos_params::rubbos_os_username
+  $rubbos_os_usergroup  = $params::rubbos_params::rubbos_os_usergroup
 
-  # Prepare bench folder and related files
+  # Prepare the bench folder and related files
   file {'${rubbos_home}/bench.tar.gz':
-       ensure  => file,
-       path    => "${rubbos_home}/bench.tar.gz",
-       source  => "puppet:///modules/rubbos_monitor/bench.tar.gz",
-       backup  => false,
+        ensure  => file,
+        path    => "${rubbos_home}/bench.tar.gz",
+        source  => "puppet:///modules/rubbos_monitor/bench.tar.gz",
+        backup  => false,
   }
 
   exec {'tar zxvf ${rubbos_home}/bench.tar.gz':
-       cwd             => "${rubbos_home}",
-        command        => "tar zxvf ${rubbos_home}/bench.tar.gz",
-       path            => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
-       subscribe       => File['${rubbos_home}/bench.tar.gz'],
+        cwd             => "${rubbos_home}",
+        command         => "tar zxvf ${rubbos_home}/bench.tar.gz",
+        path            => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        subscribe       => File['${rubbos_home}/bench.tar.gz'],
+  }
+
+  file {'flush_cache':
+        ensure  => file,
+        path    => "${rubbos_home}/bench/flush_cache",
+        source  => "puppet:///modules/rubbos_monitor/flush_cache",
+        backup  => false,
+        mode    => 0755,
+        require => Exec['tar zxvf ${rubbos_home}/bench.tar.gz'],
+  }
+
+  # Change owner and group for the bench folder
+  exec {'chown -R ${rubbos_os_username}:${rubbos_os_usergroup} ${rubbos_home}/bench':
+       cwd      => "${rubbos_home}",
+       command  => "chown -R ${rubbos_os_username}:${rubbos_os_usergroup} ${rubbos_home}/bench",
+       path     => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+       require  => File['flush_cache'],
+  }
+
+  # Prepare cpu_mem.sh
+  file {'cpu_mem.sh':
+        ensure  => file,
+        path    => "${rubbos_app}/cpu_mem.sh",
+        source  => "puppet:///modules/rubbos_monitor/cpu_mem.sh",
+        backup  => false,
+        mode    => 0755,
+        owner   => "${rubbos_os_username}",
+        group   => "${rubbos_os_usergroup}",
   }
 
   # Prepare monitoring tool
@@ -37,55 +67,44 @@ class rubbos_monitor::rubbos_monitor_on {
         ensure  => file,
         path    => "${rubbos_app}/sysstat-9.0.6.tar.gz",
         source  => "puppet:///modules/rubbos_monitor/sysstat-9.0.6.tar.gz",
-       backup  => false,
+        backup  => false,
   }
 
   exec {'tar xzvf ${rubbos_app}/sysstat-9.0.6.tar.gz':
         cwd     => "${rubbos_app}",
         command => "tar xzvf ${rubbos_app}/sysstat-9.0.6.tar.gz",
-       path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
         require => File['${rubbos_app}/sysstat-9.0.6.tar.gz'],
   }
 
-  file {'flush_cache':
-       ensure  => file,
-       path    => "${rubbos_home}/bench/flush_cache",
-       source  => "puppet:///modules/rubbos_monitor/flush_cache",
-       backup  => false,
-       mode    => 0755,
-       require => Exec['tar zxvf ${rubbos_home}/bench.tar.gz'],
-  }
-
-  file {'cpu_mem.sh':
-       ensure  => file,
-       path    => "${rubbos_app}/cpu_mem.sh",
-       source  => "puppet:///modules/rubbos_monitor/cpu_mem.sh",
-       backup  => false,
-       mode    => 0755,
-  }
-
   # Build and install sysstat
   exec {'configure sysstat':
-       cwd     => "${rubbos_app}/sysstat-9.0.6",
+        cwd     => "${rubbos_app}/sysstat-9.0.6",
         command => "${rubbos_app}/sysstat-9.0.6/configure --prefix=${rubbos_app}/sysstat-9.0.6 --disable-nls",
-       path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
-       require => [
-               Exec['tar xzvf ${rubbos_app}/sysstat-9.0.6.tar.gz'],
-               Package['make'],Package['gcc'],Package['g++']],
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        require => Exec['tar xzvf ${rubbos_app}/sysstat-9.0.6.tar.gz'],
   }
 
   exec {'make sysstat':
-       cwd     => "${rubbos_app}/sysstat-9.0.6",
-       command => "make",
-       path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
-       require => Exec['configure sysstat'],
+        cwd     => "${rubbos_app}/sysstat-9.0.6",
+        command => "make",
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        require => Exec['configure sysstat'],
   }
 
   exec {'make install sysstat':
-       cwd     => "${rubbos_app}/sysstat-9.0.6",
+        cwd     => "${rubbos_app}/sysstat-9.0.6",
         command => "make install",
-       path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
         require => Exec['make sysstat'],
   }
 
+  # Change owner and group for the sysstat
+  exec {'chown -R ${rubbos_os_username}:${rubbos_os_usergroup} ${rubbos_app}/sysstat-9.0.6':
+        cwd     => "${rubbos_app}",
+        command => "chown -R ${rubbos_os_username}:${rubbos_os_usergroup} ${rubbos_app}/sysstat-9.0.6",
+        path    => ["/bin","/sbin","/usr/bin","/usr/sbin","/usr/local/bin","/usr/local/sbin"],
+        require => Exec['make install sysstat'],
+  }
+
 }