From 7a5b383c77ef8ab746f6737fc9d3928d7b57a9b0 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 10:38:14 +0000 Subject: [PATCH 01/26] Adding perfsonar admin user and group params so that they can be customized --- manifests/params.pp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/manifests/params.pp b/manifests/params.pp index 4141995..8f85ab8 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -44,6 +44,8 @@ $patchdir = '/usr/local/share/perfsonar_patches', $patchpackage = 'patch', $patchpackage_ensure = 'present', + $psadmin_group = 'wheel', + $psadmin_user = '' ) { # os specifics case $::osfamily { From 3e53504392716781f220663627d1ba5df20030a0 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 10:51:50 +0000 Subject: [PATCH 02/26] Changing admin info template to support site_project as an array, since a site can belong to more than one project --- templates/administrative_info.erb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/templates/administrative_info.erb b/templates/administrative_info.erb index 1cfc509..5af8c54 100644 --- a/templates/administrative_info.erb +++ b/templates/administrative_info.erb @@ -3,6 +3,12 @@ site_project=<%= @site_project %> <% end if @admininfo @admininfo.keys.sort.each do |k| -%> +<% if k != 'site_project' -%> <%= k %>=<%= @admininfo[k] %> +<% else -%> +<% @admininfo[k].each do |p| -%> +site_project=<%= p %> +<% end -%> +<% end -%> <% end end -%> From 3ce09e7c52e98bcb9049f90223aabacb6619e442 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 11:32:04 +0000 Subject: [PATCH 03/26] Updating all packages and service names according to new ones in perfsonar 3.5.1 --- lib/facter/perfsonar_systemenvironment.rb | 2 +- lib/facter/perfsonar_version.rb | 2 +- manifests/cleanup.pp | 4 ++-- manifests/config.pp | 6 +++--- manifests/ls_cache_daemon/service.pp | 4 ++-- manifests/ls_registration_daemon/service.pp | 5 ++--- manifests/mesh_config/config.pp | 2 +- manifests/params.pp | 18 +++++++++--------- manifests/patches.pp | 8 ++++---- manifests/regular_testing/config.pp | 2 +- manifests/regular_testing/service.pp | 3 +-- manifests/service.pp | 12 ++++++------ 12 files changed, 33 insertions(+), 35 deletions(-) diff --git a/lib/facter/perfsonar_systemenvironment.rb b/lib/facter/perfsonar_systemenvironment.rb index 3a64e5a..2ea9378 100644 --- a/lib/facter/perfsonar_systemenvironment.rb +++ b/lib/facter/perfsonar_systemenvironment.rb @@ -1,7 +1,7 @@ Facter.add(:perfsonar_systemenvironment) do confine :osfamily => 'RedHat' setcode do - ps_se = Facter::Util::Resolution::exec('/bin/rpm -q --qf "%{NAME}\n" perl-perfSONAR_PS-Toolkit-SystemEnvironment | grep "^perl-perfSONAR_PS-Toolkit-SystemEnvironment$"') + ps_se = Facter::Util::Resolution::exec('/bin/rpm -q --qf "%{NAME}\n" perfsonar-toolkit-systemenv | grep "^perfsonar-toolkit-systemenv$"') ps_se && !ps_se.empty? ? true : false end end diff --git a/lib/facter/perfsonar_version.rb b/lib/facter/perfsonar_version.rb index db0a23c..1f67edb 100644 --- a/lib/facter/perfsonar_version.rb +++ b/lib/facter/perfsonar_version.rb @@ -1,7 +1,7 @@ Facter.add(:perfsonar_version) do confine :osfamily => 'RedHat' setcode do - perfsonar = Facter::Util::Resolution::exec('/bin/rpm -q --qf "%{NAME} %{VERSION}\n" perl-perfSONAR_PS-Toolkit | grep "^perl-perfSONAR_PS-Toolkit "') + perfsonar = Facter::Util::Resolution::exec('/bin/rpm -q --qf "%{NAME} %{VERSION}\n" perfsonar-toolkit | grep "^perfsonar-toolkit "') perfsonar.split(/ /)[1] if perfsonar end end diff --git a/manifests/cleanup.pp b/manifests/cleanup.pp index 6279ea8..ca78880 100644 --- a/manifests/cleanup.pp +++ b/manifests/cleanup.pp @@ -8,9 +8,9 @@ } if ! $::perfsonar_systemenvironment { # don't remove the following packages if - # perl-perfSONAR_PS-Toolkit-SystemEnvironment is installed + # perfsonar-toolkit-systemenv is installed # they are dependencies and can't be removed without removing - # perl-perfSONAR_PS-Toolkit-SystemEnvironment as well + # perfsonar-toolkit-systemenv as well package { [ 'php-common', 'perl-DBD-MySQL', ]: ensure => 'absent', } diff --git a/manifests/config.pp b/manifests/config.pp index 37ad9ef..7ff0b3b 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -20,7 +20,7 @@ group => 'root', mode => '0644', content => template("${module_name}/administrative_info.erb"), - require => Package['perl-perfSONAR_PS-Toolkit'] + require => Package['perfsonar-toolkit'] } # update owner / permissions on directories file { '/var/lib/perfsonar/db_backups': @@ -28,14 +28,14 @@ owner => 'perfsonar', group => 'perfsonar', mode => '0755', - require => Package['perl-perfSONAR_PS-Toolkit'] + require => Package['perfsonar-toolkit'] } file { '/var/lib/perfsonar/log_view': ensure => 'directory', owner => 'perfsonar', group => 'perfsonar', mode => '0755', - require => Package['perl-perfSONAR_PS-Toolkit'] + require => Package['perfsonar-toolkit'] } } diff --git a/manifests/ls_cache_daemon/service.pp b/manifests/ls_cache_daemon/service.pp index 8f72b67..0bc4182 100644 --- a/manifests/ls_cache_daemon/service.pp +++ b/manifests/ls_cache_daemon/service.pp @@ -3,11 +3,11 @@ $enable = $::perfsonar::params::ls_cache_daemon_enable, ) inherits perfsonar::params { # start stop restart - service { 'ls_cache_daemon': + service { 'perfsonar-lscachedaemon': ensure => $ensure, enable => $enable, hasstatus => false, hasrestart => true, - require => Package['perl-perfSONAR_PS-LSCacheDaemon'], + require => Package['perfsonar-lscachedaemon'], } } diff --git a/manifests/ls_registration_daemon/service.pp b/manifests/ls_registration_daemon/service.pp index e6315f1..c564b74 100644 --- a/manifests/ls_registration_daemon/service.pp +++ b/manifests/ls_registration_daemon/service.pp @@ -3,11 +3,10 @@ $enable = $::perfsonar::params::ls_registration_daemon_enable, ) inherits perfsonar::params { # start stop restart - service { 'ls_registration_daemon': + service { 'perfsonar-lsregistrationdaemon': ensure => $ensure, enable => $enable, - hasstatus => false, hasrestart => true, - require => Package['perl-perfSONAR_PS-LSRegistrationDaemon'], + require => Package['perfsonar-lsregistrationdaemon'], } } diff --git a/manifests/mesh_config/config.pp b/manifests/mesh_config/config.pp index 8b83376..77bc66b 100644 --- a/manifests/mesh_config/config.pp +++ b/manifests/mesh_config/config.pp @@ -20,7 +20,7 @@ File['/etc/sudoers.d/perfsonar_mesh_config'], ], refreshonly => true, - notify => Service['regular_testing'], + notify => Service['perfsonar-regulartesting'], } file { '/etc/sudoers.d/perfsonar_mesh_config': ensure => 'file', diff --git a/manifests/params.pp b/manifests/params.pp index 8f85ab8..d7b27f9 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -68,7 +68,7 @@ # packages that are dependencies of packages in this list have been removed from the original list # general perfsonar packages $install_packages = [ - 'perl-perfSONAR_PS-Toolkit', + 'perfsonar-toolkit', # installed as dependencies, but need them here to get the dependencies in puppet right $httpd_package, 'esmond', @@ -79,16 +79,16 @@ 'cassandra20', $modssl_package, # don't want to install SystemEnvironment because it keeps overwriting my configurations during updates -# 'perl-perfSONAR_PS-Toolkit-SystemEnvironment', -# packages that are installed by perl-perfSONAR_PS-Toolkit-SystemEnvironment: -# perl-perfSONAR_PS-Toolkit-ntp +# 'perfsonar-toolkit-systemenv', +# packages that are installed by perfsonar-toolkit-systemenv: +# perfsonar-toolkit-ntp # configures ntp server (replaces existing config) -# perl-perfSONAR_PS-Toolkit-security +# perfsonar-toolkit-security # configures iptables -# perl-perfSONAR_PS-Toolkit-service-watcher +# perfsonar-toolkit-service-watcher # monitors status of services: mysql, httpd, cassandra, owamp, bwctl, npad, ndt, regular_testing, ls_registration_daemon, ls_cache_daemon, config_daemon # according to /opt/perfsonar_ps/toolkit/lib/perfSONAR_PS/NPToolkit/Services/*.pm, the following services need regular restarts: OWAMP, RegularTesting -# perl-perfSONAR_PS-Toolkit-sysctl +# perfsonar-toolkit-sysctl # configures /etc/sysctl.conf (appends values) # don't want to install gcc and mysql, it's not required # 'gcc', @@ -128,10 +128,10 @@ 'iperf3', # bwctl packages install iperf and iperf3-devel as dependencies, but not iperf3 ??? ] $ls_registration_daemon_packages = [ - 'perl-perfSONAR_PS-LSRegistrationDaemon', + 'perfsonar-lsregistrationdaemon', ] $ls_cache_daemon_packages = [ - 'perl-perfSONAR_PS-LSCacheDaemon', + 'perfsonar-lscachedaemon', ] # logrotate $logrotate_cf = '/etc/logrotate.d/perfsonar' diff --git a/manifests/patches.pp b/manifests/patches.pp index 87994aa..e1118ae 100644 --- a/manifests/patches.pp +++ b/manifests/patches.pp @@ -17,16 +17,16 @@ '01_perfsonar_webservice_auth.patch.3.5.0' => { path => '/opt/perfsonar_ps/toolkit/lib/perfSONAR_PS/NPToolkit/WebService', strip => 1, - # file itself is part of perl-perfSONAR_PS-Toolkit-Library - # which is installed as a dependency of perl-perfSONAR_PS-Toolkit + # file itself is part of perfsonar-toolkit-library + # which is installed as a dependency of perfsonar-toolkit # therefore we use the latter as a dependency for the patch - deps => Package['perl-perfSONAR_PS-Toolkit'], + deps => Package['perfsonar-toolkit'], checkfile => 'Auth.pm', # relative to path }, '02_perfsonar_webservice_pageauth.patch.3.5.0' => { path => '/opt/perfsonar_ps/toolkit/web-ng/root', strip => 1, - deps => Package['perl-perfSONAR_PS-Toolkit'], + deps => Package['perfsonar-toolkit'], checkfile => 'index.cgi', # relative to path } } diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index e86e4d1..411eba1 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -21,7 +21,7 @@ } $tn = $snotify ? { false => undef, - default => Service['regular_testing'], + default => Service['perfsonar-regulartesting'], } file { '/opt/perfsonar_ps/regular_testing/etc/regular_testing-logger.conf': ensure => 'file', diff --git a/manifests/regular_testing/service.pp b/manifests/regular_testing/service.pp index 56df7f4..9be3b8d 100644 --- a/manifests/regular_testing/service.pp +++ b/manifests/regular_testing/service.pp @@ -2,10 +2,9 @@ $ensure = $::perfsonar::params::regular_testing_ensure, $enable = $::perfsonar::params::regular_testing_enable, ) inherits perfsonar::params { - service { 'regular_testing': + service { 'perfsonar-regulartesting': ensure => $ensure, enable => $enable, - hasstatus => false, hasrestart => true, pattern => 'perfSONAR_PS Regular Testing', require => [ diff --git a/manifests/service.pp b/manifests/service.pp index e0a52ef..876288e 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -21,26 +21,26 @@ $cassandra_enable = $::perfsonar::params::cassandra_enable, ) inherits perfsonar::params { # start stop restart - service { 'config_daemon': + service { 'perfsonar-configdaemon': ensure => $config_daemon_ensure, enable => $config_daemon_enable, hasstatus => false, hasrestart => true, - require => Package['perl-perfSONAR_PS-Toolkit'], + require => Package['perfsonar-toolkit'], } # start (no service, only runs at boot) - service { 'configure_nic_parameters': + service { 'perfsonar-configure_nic_par': enable => $config_nic_params, hasstatus => false, hasrestart => false, - require => Package['perl-perfSONAR_PS-Toolkit'], + require => Package['perfsonar-toolkit'], } # start stop(nil) restart (no service, only runs at boot) - service { 'generate_motd': + service { 'perfsonar-generate_motd': enable => $generate_motd_enable, hasstatus => false, hasrestart => true, - require => Package['perl-perfSONAR_PS-Toolkit'], + require => Package['perfsonar-toolkit'], } # start stop status restart condrestart|try-restart(stop start) force-reload|reload(nil) service { 'htcacheclean': From bd5ea5c48a5134bb9b08e9f50a2edf58bba93441 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 11:35:35 +0000 Subject: [PATCH 04/26] Fixing lsregistrationdaemon service name in logger conf dependency --- manifests/ls_registration_daemon/config.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/ls_registration_daemon/config.pp b/manifests/ls_registration_daemon/config.pp index 7adee41..261af7b 100644 --- a/manifests/ls_registration_daemon/config.pp +++ b/manifests/ls_registration_daemon/config.pp @@ -6,7 +6,7 @@ ) inherits perfsonar::params { $tn = $snotify ? { false => undef, - default => Service['ls_registration_daemon'], + default => Service['perfsonar-lsregistrationdaemon'], } file { '/opt/perfsonar_ps/ls_registration_daemon/etc/ls_registration_daemon-logger.conf': ensure => 'file', From 3c064893749fa0c435d3d7286ed600ae1573469c Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 11:37:43 +0000 Subject: [PATCH 05/26] Fixing broken dependency from newly named service lscachedaemon --- manifests/ls_cache_daemon/config.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/ls_cache_daemon/config.pp b/manifests/ls_cache_daemon/config.pp index d10d4ce..644b682 100644 --- a/manifests/ls_cache_daemon/config.pp +++ b/manifests/ls_cache_daemon/config.pp @@ -6,7 +6,7 @@ ) inherits perfsonar::params { $tn = $snotify ? { false => undef, - default => Service['ls_cache_daemon'], + default => Service['perfsonar-lscachedaemon'], } file { '/opt/perfsonar_ps/ls_cache_daemon/etc/ls_cache_daemon-logger.conf': ensure => 'file', From fb237133b07e14dc3077761e9d0fc4b20e3f91ae Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 11:59:26 +0000 Subject: [PATCH 06/26] Fixing configure nic param perfsonar service name --- manifests/service.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/service.pp b/manifests/service.pp index 876288e..a2b87c1 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -29,7 +29,7 @@ require => Package['perfsonar-toolkit'], } # start (no service, only runs at boot) - service { 'perfsonar-configure_nic_par': + service { 'perfsonar-configure_nic_parameters': enable => $config_nic_params, hasstatus => false, hasrestart => false, From 2a37ebc1f4166f01e1d037ab2b7cae334c2158c0 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 12:08:24 +0000 Subject: [PATCH 07/26] Changing owampd name to owamp-server and setting custom status command on lsconfigdaemon service (the service name does not appear in process launched by the daemon) --- manifests/owamp/service.pp | 3 +-- manifests/service.pp | 1 + 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/owamp/service.pp b/manifests/owamp/service.pp index a9af43f..310c3f5 100644 --- a/manifests/owamp/service.pp +++ b/manifests/owamp/service.pp @@ -2,10 +2,9 @@ $ensure = $::perfsonar::params::owamp_ensure, $enable = $::perfsonar::params::owamp_enable, ) inherits perfsonar::params { - service { 'owampd': + service { 'owamp-server': ensure => $ensure, enable => $enable, - hasstatus => false, hasrestart => true, require => Package['owamp-server'], } diff --git a/manifests/service.pp b/manifests/service.pp index a2b87c1..38260d7 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -25,6 +25,7 @@ ensure => $config_daemon_ensure, enable => $config_daemon_enable, hasstatus => false, + status => '/usr/bin/pgrep config_daemon > /dev/null', hasrestart => true, require => Package['perfsonar-toolkit'], } From c4da1d28420315a7c25623b067a797c3cc06f9e2 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 12:10:40 +0000 Subject: [PATCH 08/26] Changing ls_cache_daemon logger config path to /etc/perfsonar/lscachedaemon-logger.conf --- manifests/ls_cache_daemon/config.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/ls_cache_daemon/config.pp b/manifests/ls_cache_daemon/config.pp index 644b682..565fa3e 100644 --- a/manifests/ls_cache_daemon/config.pp +++ b/manifests/ls_cache_daemon/config.pp @@ -8,7 +8,7 @@ false => undef, default => Service['perfsonar-lscachedaemon'], } - file { '/opt/perfsonar_ps/ls_cache_daemon/etc/ls_cache_daemon-logger.conf': + file { '/etc/perfsonar/lscachedaemon-logger.conf': ensure => 'file', owner => 'perfsonar', group => 'perfsonar', From 2392dcb04f0da5a6bc2c56734df85ef619c0a412 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 12:13:01 +0000 Subject: [PATCH 09/26] Fixing dependency after lscachedaemon logger config file name changed --- manifests/ls_cache_daemon/install.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/ls_cache_daemon/install.pp b/manifests/ls_cache_daemon/install.pp index 1325685..8a92908 100644 --- a/manifests/ls_cache_daemon/install.pp +++ b/manifests/ls_cache_daemon/install.pp @@ -3,6 +3,6 @@ ) inherits perfsonar::params { package { $::perfsonar::params::ls_cache_daemon_packages: ensure => $ensure, - before => File['/opt/perfsonar_ps/ls_cache_daemon/etc/ls_cache_daemon-logger.conf'], + before => File['/etc/perfsonar/lscachedaemon-logger.conf'], } } From c9e89edf6c7c16cbba5e7b2fc00672dd968568c6 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 12:15:38 +0000 Subject: [PATCH 10/26] Adding custom status command to lscachedaemon service --- manifests/ls_cache_daemon/service.pp | 1 + 1 file changed, 1 insertion(+) diff --git a/manifests/ls_cache_daemon/service.pp b/manifests/ls_cache_daemon/service.pp index 0bc4182..86772d1 100644 --- a/manifests/ls_cache_daemon/service.pp +++ b/manifests/ls_cache_daemon/service.pp @@ -7,6 +7,7 @@ ensure => $ensure, enable => $enable, hasstatus => false, + status => '/usr/bin/pgrep lscachedaemon > /dev/null', hasrestart => true, require => Package['perfsonar-lscachedaemon'], } From 07210cacb6a25412340527a623224338a462713e Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 17:17:36 +0000 Subject: [PATCH 11/26] Changing the name of bwctl server according to version 3.5.1 rules --- manifests/bwctl/service.pp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/manifests/bwctl/service.pp b/manifests/bwctl/service.pp index f459737..5c87e65 100644 --- a/manifests/bwctl/service.pp +++ b/manifests/bwctl/service.pp @@ -2,10 +2,9 @@ $ensure = $::perfsonar::params::bwctl_ensure, $enable = $::perfsonar::params::bwctl_enable, ) inherits perfsonar::params { - service { 'bwctld': + service { 'bwctl-server': ensure => $ensure, enable => $enable, - hasstatus => false, hasrestart => true, require => Package['bwctl-server'], } From eb18a75380332bbfb5ecd3fcc2798fafc62f0ebd Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Wed, 9 Mar 2016 17:29:48 +0000 Subject: [PATCH 12/26] Putting hasstatus => false back, as bwctl and owap have got no proper service status --- manifests/bwctl/service.pp | 1 + manifests/owamp/service.pp | 1 + 2 files changed, 2 insertions(+) diff --git a/manifests/bwctl/service.pp b/manifests/bwctl/service.pp index 5c87e65..0b35d3d 100644 --- a/manifests/bwctl/service.pp +++ b/manifests/bwctl/service.pp @@ -5,6 +5,7 @@ service { 'bwctl-server': ensure => $ensure, enable => $enable, + hasstatus => false, hasrestart => true, require => Package['bwctl-server'], } diff --git a/manifests/owamp/service.pp b/manifests/owamp/service.pp index 310c3f5..3ae7be7 100644 --- a/manifests/owamp/service.pp +++ b/manifests/owamp/service.pp @@ -5,6 +5,7 @@ service { 'owamp-server': ensure => $ensure, enable => $enable, + hasstatus => false, hasrestart => true, require => Package['owamp-server'], } From a328d0b04383971e3ee3c000c29f690257aaf372 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 09:14:53 +0000 Subject: [PATCH 13/26] Setting resource ordering for most services so that they first get installed and then configured and executed --- manifests/bwctl.pp | 1 + manifests/init.pp | 1 + manifests/mesh_config.pp | 1 + manifests/owamp.pp | 1 + manifests/regular_testing.pp | 2 ++ 5 files changed, 6 insertions(+) diff --git a/manifests/bwctl.pp b/manifests/bwctl.pp index 25dd3b7..d558d86 100644 --- a/manifests/bwctl.pp +++ b/manifests/bwctl.pp @@ -1,4 +1,5 @@ class perfsonar::bwctl { include 'perfsonar::bwctl::install' include 'perfsonar::bwctl::service' + Class['perfsonar::bwctl::install'] -> Class['perfsonar::bwctl::service'] } diff --git a/manifests/init.pp b/manifests/init.pp index 14230a3..4ac288f 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -10,4 +10,5 @@ include 'perfsonar::bwctl' include 'perfsonar::ls_registration_daemon' include 'perfsonar::ls_cache_daemon' + Class['perfsonar::install'] -> Class['perfsonar::config'] -> Class['perfsonar::service'] } diff --git a/manifests/mesh_config.pp b/manifests/mesh_config.pp index 19eba29..c220a4a 100644 --- a/manifests/mesh_config.pp +++ b/manifests/mesh_config.pp @@ -1,4 +1,5 @@ class perfsonar::mesh_config { include 'perfsonar::mesh_config::install' include 'perfsonar::mesh_config::config' + Class['perfsonar::mesh_config::install'] -> Class['perfsonar::mesh_config::config'] } diff --git a/manifests/owamp.pp b/manifests/owamp.pp index de1ebd1..d789f2b 100644 --- a/manifests/owamp.pp +++ b/manifests/owamp.pp @@ -1,4 +1,5 @@ class perfsonar::owamp { include 'perfsonar::owamp::install' include 'perfsonar::owamp::service' + Class['perfsonar::owamp::install'] -> Class['perfsonar::owamp::service'] } diff --git a/manifests/regular_testing.pp b/manifests/regular_testing.pp index 1df3d67..cf42356 100644 --- a/manifests/regular_testing.pp +++ b/manifests/regular_testing.pp @@ -2,4 +2,6 @@ include 'perfsonar::regular_testing::install' include 'perfsonar::regular_testing::config' include 'perfsonar::regular_testing::service' + Class['perfsonar::regular_testing::install'] -> Class['perfsonar::regular_testing::config'] -> + Class['perfsonar::regular_testing::service'] } From 6407734194732d73df19b89a9c109114f2da2da9 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 11:42:12 +0000 Subject: [PATCH 14/26] Changing paths of administrative_info and esmond.conf to new defaults --- manifests/config.pp | 2 +- manifests/esmond.pp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/manifests/config.pp b/manifests/config.pp index 7ff0b3b..b9f8f59 100644 --- a/manifests/config.pp +++ b/manifests/config.pp @@ -14,7 +14,7 @@ # we need the onlyif because the above command produces an error if the regex can't find any values onlyif => 'match readahead/*[label()!=\'#comment\'][.=~regexp(\'"?yes"?\')] size > 0', } - file { '/opt/perfsonar_ps/toolkit/etc/administrative_info': + file { '/etc/perfsonar/toolkit/administrative_info': ensure => 'present', owner => 'root', group => 'root', diff --git a/manifests/esmond.pp b/manifests/esmond.pp index 8e48d17..f8206b1 100644 --- a/manifests/esmond.pp +++ b/manifests/esmond.pp @@ -39,7 +39,7 @@ } } - file { '/opt/esmond/esmond.conf': + file { '/etc/esmond/esmond.conf': ensure => 'file', owner => 'root', group => 'root', @@ -54,7 +54,7 @@ group => 'root', mode => '0750', content => template("${module_name}/configure_esmond.erb"), - require => File['/opt/esmond/esmond.conf'], + require => File['/etc/esmond/esmond.conf'], } exec { 'run esmond configuration script': command => '/usr/local/sbin/puppet_perfsonar_configure_esmond', @@ -62,7 +62,7 @@ creates => '/var/lib/esmond/.configured.puppet', require => [ File['/usr/local/sbin/puppet_perfsonar_configure_esmond'], - File['/opt/esmond/esmond.conf'], + File['/etc/esmond/esmond.conf'], ], } } From 9c8a46ecd9ebfe73e9f8aff6741b20fa02811d15 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 11:51:12 +0000 Subject: [PATCH 15/26] Fixing registration daemon logger and mesh_config config paths --- manifests/ls_registration_daemon/config.pp | 2 +- manifests/ls_registration_daemon/install.pp | 2 +- manifests/mesh_config/config.pp | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/manifests/ls_registration_daemon/config.pp b/manifests/ls_registration_daemon/config.pp index 261af7b..e7d67eb 100644 --- a/manifests/ls_registration_daemon/config.pp +++ b/manifests/ls_registration_daemon/config.pp @@ -8,7 +8,7 @@ false => undef, default => Service['perfsonar-lsregistrationdaemon'], } - file { '/opt/perfsonar_ps/ls_registration_daemon/etc/ls_registration_daemon-logger.conf': + file { '/etc/perfsonar/lsregistrationdaemon-logger.conf': ensure => 'file', owner => 'perfsonar', group => 'perfsonar', diff --git a/manifests/ls_registration_daemon/install.pp b/manifests/ls_registration_daemon/install.pp index 82c5d67..b870378 100644 --- a/manifests/ls_registration_daemon/install.pp +++ b/manifests/ls_registration_daemon/install.pp @@ -3,6 +3,6 @@ ) inherits perfsonar::params { package { $::perfsonar::params::ls_registration_daemon_packages: ensure => $ensure, - before => File['/opt/perfsonar_ps/ls_registration_daemon/etc/ls_registration_daemon-logger.conf'], + before => File['/etc/perfsonar/lsregistrationdaemon-logger.conf'], } } diff --git a/manifests/mesh_config/config.pp b/manifests/mesh_config/config.pp index 77bc66b..0c78024 100644 --- a/manifests/mesh_config/config.pp +++ b/manifests/mesh_config/config.pp @@ -2,7 +2,7 @@ $agentconfig = $::perfsonar::params::mesh_config_agent, ) inherits perfsonar::params { $agent_options = merge($perfsonar::params::agentconfig, $agentconfig) - file { '/opt/perfsonar_ps/mesh_config/etc/agent_configuration.conf': + file { '/etc/perfsonar/meshconfig-agent.conf': ensure => 'present', owner => 'perfsonar', group => 'perfsonar', @@ -14,7 +14,7 @@ exec { 'generate mesh configuration': command => '/usr/bin/sudo -u perfsonar /opt/perfsonar_ps/mesh_config/bin/generate_configuration', logoutput => 'on_failure', - subscribe => File['/opt/perfsonar_ps/mesh_config/etc/agent_configuration.conf'], + subscribe => File['/etc/perfsonar/meshconfig-agent.conf'], require => [ Exec['run regular testing configuration script'], File['/etc/sudoers.d/perfsonar_mesh_config'], From e42d4545cfc4e8622e51f7b6ef8d3ad1e6f4c993 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 11:57:50 +0000 Subject: [PATCH 16/26] Fixing paths of mesh config script and regular testing logger conf file --- manifests/mesh_config/config.pp | 2 +- manifests/regular_testing/config.pp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/mesh_config/config.pp b/manifests/mesh_config/config.pp index 0c78024..47efe1f 100644 --- a/manifests/mesh_config/config.pp +++ b/manifests/mesh_config/config.pp @@ -12,7 +12,7 @@ } # needs notty in sudoers exec { 'generate mesh configuration': - command => '/usr/bin/sudo -u perfsonar /opt/perfsonar_ps/mesh_config/bin/generate_configuration', + command => '/usr/bin/sudo -u perfsonar /usr/lib/perfsonar/bin/generate_configuration', logoutput => 'on_failure', subscribe => File['/etc/perfsonar/meshconfig-agent.conf'], require => [ diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index 411eba1..88a63fa 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -23,7 +23,7 @@ false => undef, default => Service['perfsonar-regulartesting'], } - file { '/opt/perfsonar_ps/regular_testing/etc/regular_testing-logger.conf': + file { '/etc/perfsonar/regulartesting-logger.conf': ensure => 'file', owner => 'perfsonar', group => 'perfsonar', From ba611f066a38e90d03ea8654e8d677ec2f22b0c1 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:25:34 +0000 Subject: [PATCH 17/26] Changing mesh config and regular testing package names --- manifests/params.pp | 4 ++-- manifests/regular_testing/config.pp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/params.pp b/manifests/params.pp index d7b27f9..d6a7a4d 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -108,11 +108,11 @@ # 'comps-extras' contains images only, do we need it ?? $regular_testing_packages = [ - 'perl-perfSONAR_PS-RegularTesting', + 'perfsonar-regulartesting', #'perl-DBD-MySQL', # required by regular testing ? I've seen related error message in the logs when it's not installed ] $mesh_config_packages = [ - 'perl-perfSONAR_PS-MeshConfig-Agent', + 'perfsonar-meshconfig-agent', ] # we should split client and server at some point $owamp_packages = [ diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index 88a63fa..9af081d 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -11,7 +11,7 @@ group => 'root', mode => '0750', content => template("${module_name}/configure_regular_testing.erb"), - require => Package['perl-perfSONAR_PS-RegularTesting'], + require => Package['perfsonar-regulartesting'], } exec { 'run regular testing configuration script': command => '/usr/local/sbin/puppet_perfsonar_configure_regular_testing', From 1e8d60b3211f58d8858c475e67ce491fb41c9917 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:38:58 +0000 Subject: [PATCH 18/26] Adding new parameters for esmond root and regular testing config file paths; changing the configure_regular_testing template accordingly --- manifests/params.pp | 2 ++ manifests/regular_testing/config.pp | 10 ++++++---- templates/configure_regular_testing.erb | 14 +++++++------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/manifests/params.pp b/manifests/params.pp index d6a7a4d..d2e94ce 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -2,6 +2,7 @@ $regular_testing_install_ensure = 'present', $regular_testing_ensure = 'stopped', $regular_testing_enable = false, + $regular_testing_config = '/etc/perfsonar/regulartesting.conf', $regular_testing_loglvl = 'INFO', $regular_testing_logger = 'Log::Dispatch::FileRotate', $regular_testing_logfile = '/var/log/perfsonar/regular_testing.log', @@ -21,6 +22,7 @@ $esmond_dbuser = 'esmond', $esmond_dbpass = 'jqIqSIiuzwI0FMUu', $esmond_use_db_module = true, + $esmond_root = '/usr/lib/esmond', $ls_registration_daemon_install_ensure = 'present', $ls_registration_daemon_ensure = 'running', $ls_registration_daemon_enable = true, diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index 9af081d..742a11a 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -1,9 +1,11 @@ # loglevel is a puppet metaparameter, so have to use something else (loglvl) class perfsonar::regular_testing::config( - $snotify = $::perfsonar::params::regular_testing_snotify, - $loglvl = $::perfsonar::params::regular_testing_loglvl, - $logger = $::perfsonar::params::regular_testing_logger, - $logfile = $::perfsonar::params::regular_testing_logfile, + $snotify = $::perfsonar::params::regular_testing_snotify, + $loglvl = $::perfsonar::params::regular_testing_loglvl, + $logger = $::perfsonar::params::regular_testing_logger, + $logfile = $::perfsonar::params::regular_testing_logfile, + $configfile = $::perfsonar::params::regular_testing_config, + $esmondroot = $::perfsonar::params::esmond_root, ) inherits perfsonar::params { file { '/usr/local/sbin/puppet_perfsonar_configure_regular_testing': ensure => 'file', diff --git a/templates/configure_regular_testing.erb b/templates/configure_regular_testing.erb index 48befa6..2a7c74e 100644 --- a/templates/configure_regular_testing.erb +++ b/templates/configure_regular_testing.erb @@ -1,12 +1,12 @@ #!/bin/bash #set esmond env variables -export ESMOND_ROOT=/opt/esmond +export ESMOND_ROOT=<%= @esmondroot %> export ESMOND_CONF=$ESMOND_ROOT/esmond.conf export DJANGO_SETTINGS_MODULE=esmond.settings #initialize python -cd /opt/esmond +cd $ESMOND_ROOT source /opt/rh/python27/enable /opt/rh/python27/root/usr/bin/virtualenv --prompt="(esmond)" . . bin/activate @@ -20,15 +20,15 @@ python esmond/manage.py add_timeseries_post_user perfsonar #put api key in regular_testing if [ -n "$KEY" ]; then - grep -q 'esmond/latency' /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf + grep -q 'esmond/latency' <%= @configfile %> if [ $? != 0 ]; then - mv /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf.install.back - cp -f /opt/perfsonar_ps/toolkit/etc/default_service_configs/regular_testing.conf /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf + mv <%= @configfile -%> <%= @configfile -%>.install.back + cp -f /etc/perfsonar/toolkit/default_service_configs/regular_testing.conf <%= @configfile %> fi - grep -q ESMOND_API_KEY /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf + grep -q ESMOND_API_KEY <%= @configfile %> if [ $? == 0 ]; then - sed -i "s/ESMOND_API_KEY/$KEY/g" /opt/perfsonar_ps/regular_testing/etc/regular_testing.conf + sed -i "s/ESMOND_API_KEY/$KEY/g" <%= @configfile %> fi fi From 0d10c2654deadc0dab06ab7ad0cd86da37285b86 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:41:02 +0000 Subject: [PATCH 19/26] Forgot to rename package dependency for regular testing service --- manifests/regular_testing/service.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/regular_testing/service.pp b/manifests/regular_testing/service.pp index 9be3b8d..044021e 100644 --- a/manifests/regular_testing/service.pp +++ b/manifests/regular_testing/service.pp @@ -8,7 +8,7 @@ hasrestart => true, pattern => 'perfSONAR_PS Regular Testing', require => [ - Package['perl-perfSONAR_PS-RegularTesting'], + Package['perfsonar-regulartesting'], Exec['run regular testing configuration script'], ], } From 83c2d4de2cbe7fc2da260e87157ba2b3310868aa Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:43:33 +0000 Subject: [PATCH 20/26] Changing meshconfig agent package name --- manifests/mesh_config/config.pp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/mesh_config/config.pp b/manifests/mesh_config/config.pp index 47efe1f..4943181 100644 --- a/manifests/mesh_config/config.pp +++ b/manifests/mesh_config/config.pp @@ -8,7 +8,7 @@ group => 'perfsonar', mode => '0644', content => template("${module_name}/agent_configuration.conf.erb"), - require => Package['perl-perfSONAR_PS-MeshConfig-Agent'], + require => Package['perfsonar-meshconfig-agent'], } # needs notty in sudoers exec { 'generate mesh configuration': From 23844e2b05c9382961aa42d4315ebddfb2963bb5 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:49:30 +0000 Subject: [PATCH 21/26] Fixing path of esmond.conf file to be /etc/esmond/esmond.conf --- templates/configure_regular_testing.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/configure_regular_testing.erb b/templates/configure_regular_testing.erb index 2a7c74e..2ce7cb9 100644 --- a/templates/configure_regular_testing.erb +++ b/templates/configure_regular_testing.erb @@ -2,7 +2,7 @@ #set esmond env variables export ESMOND_ROOT=<%= @esmondroot %> -export ESMOND_CONF=$ESMOND_ROOT/esmond.conf +export ESMOND_CONF=/etc/esmond/esmond.conf export DJANGO_SETTINGS_MODULE=esmond.settings #initialize python From 245b692b429308c1a31092edcc39cd7a4cccfab0 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 12:53:06 +0000 Subject: [PATCH 22/26] Fixing path of puppet check file for regular testing config --- manifests/regular_testing/config.pp | 2 +- templates/configure_regular_testing.erb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index 742a11a..93c43fa 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -18,7 +18,7 @@ exec { 'run regular testing configuration script': command => '/usr/local/sbin/puppet_perfsonar_configure_regular_testing', logoutput => 'on_failure', - creates => '/var/lib/perfsonar/regular_testing/.configured.puppet', + creates => '/var/lib/perfsonar/regulartesting/.configured.puppet', require => File['/usr/local/sbin/puppet_perfsonar_configure_regular_testing'], } $tn = $snotify ? { diff --git a/templates/configure_regular_testing.erb b/templates/configure_regular_testing.erb index 2ce7cb9..d3a34d4 100644 --- a/templates/configure_regular_testing.erb +++ b/templates/configure_regular_testing.erb @@ -35,4 +35,4 @@ fi if [ -f /opt/perfsonar_ps/PingER/etc/pinger-landmarks.xml -o /opt/perfsonar_ps/perfsonarbuoy_ma/etc/owmesh.conf ]; then /opt/perfsonar_ps/toolkit/scripts/upgrade/upgrade_regular_tests fi -touch /var/lib/perfsonar/regular_testing/.configured.puppet +touch /var/lib/perfsonar/regulartesting/.configured.puppet From af0ae0116bd5b33f704b1ca4e93915dc0c025b3d Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 14:44:47 +0000 Subject: [PATCH 23/26] Replacing pgrep hasstatus with Puppet attribute 'pattern' for cache_daemon and config_daemon. Removing LS bootstrap client from packages and services --- manifests/ls_cache_daemon/service.pp | 2 +- manifests/params.pp | 1 - manifests/service.pp | 10 +--------- 3 files changed, 2 insertions(+), 11 deletions(-) diff --git a/manifests/ls_cache_daemon/service.pp b/manifests/ls_cache_daemon/service.pp index 86772d1..7990178 100644 --- a/manifests/ls_cache_daemon/service.pp +++ b/manifests/ls_cache_daemon/service.pp @@ -7,7 +7,7 @@ ensure => $ensure, enable => $enable, hasstatus => false, - status => '/usr/bin/pgrep lscachedaemon > /dev/null', + pattern => 'lscachedaemon', hasrestart => true, require => Package['perfsonar-lscachedaemon'], } diff --git a/manifests/params.pp b/manifests/params.pp index d2e94ce..e51d293 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -74,7 +74,6 @@ # installed as dependencies, but need them here to get the dependencies in puppet right $httpd_package, 'esmond', - 'perl-perfSONAR_PS-SimpleLS-BootStrap-client', 'ndt-server', 'npad', 'nscd', diff --git a/manifests/service.pp b/manifests/service.pp index 38260d7..fa40157 100644 --- a/manifests/service.pp +++ b/manifests/service.pp @@ -25,7 +25,7 @@ ensure => $config_daemon_ensure, enable => $config_daemon_enable, hasstatus => false, - status => '/usr/bin/pgrep config_daemon > /dev/null', + pattern => 'config_daemon', hasrestart => true, require => Package['perfsonar-toolkit'], } @@ -104,14 +104,6 @@ service { 'rpcbind': } # start stop restart - service { 'simple_ls_bootstrap_client': - ensure => $ls_bs_client_ensure, - enable => $ls_bs_client_enable, - hasstatus => false, - hasrestart => true, - pattern => 'SimpleLSBootStrapClientDaemon.pl', - require => Package['perl-perfSONAR_PS-SimpleLS-BootStrap-client'], - } service { 'cassandra': ensure => $cassandra_ensure, enable => $cassandra_enable, From 1122d4652b52d9960365a3a24859b13b7edfde99 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 10 Mar 2016 15:58:09 +0000 Subject: [PATCH 24/26] Adding some useful parameters to customize install/config paths --- manifests/params.pp | 2 ++ manifests/regular_testing/config.pp | 2 ++ templates/configure_regular_testing.erb | 4 ++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/manifests/params.pp b/manifests/params.pp index e51d293..b96785a 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -3,6 +3,7 @@ $regular_testing_ensure = 'stopped', $regular_testing_enable = false, $regular_testing_config = '/etc/perfsonar/regulartesting.conf', + $regular_testing_libpath = '/var/lib/perfsonar/regulartesting', $regular_testing_loglvl = 'INFO', $regular_testing_logger = 'Log::Dispatch::FileRotate', $regular_testing_logfile = '/var/log/perfsonar/regular_testing.log', @@ -23,6 +24,7 @@ $esmond_dbpass = 'jqIqSIiuzwI0FMUu', $esmond_use_db_module = true, $esmond_root = '/usr/lib/esmond', + $esmond_conf_path = '/etc/esmond', $ls_registration_daemon_install_ensure = 'present', $ls_registration_daemon_ensure = 'running', $ls_registration_daemon_enable = true, diff --git a/manifests/regular_testing/config.pp b/manifests/regular_testing/config.pp index 93c43fa..909f43a 100644 --- a/manifests/regular_testing/config.pp +++ b/manifests/regular_testing/config.pp @@ -1,11 +1,13 @@ # loglevel is a puppet metaparameter, so have to use something else (loglvl) class perfsonar::regular_testing::config( + $libpath = $::perfsonar::params::regular_testing_libpath, $snotify = $::perfsonar::params::regular_testing_snotify, $loglvl = $::perfsonar::params::regular_testing_loglvl, $logger = $::perfsonar::params::regular_testing_logger, $logfile = $::perfsonar::params::regular_testing_logfile, $configfile = $::perfsonar::params::regular_testing_config, $esmondroot = $::perfsonar::params::esmond_root, + $esmondconf = $::perfsonar::params::esmond_conf_path, ) inherits perfsonar::params { file { '/usr/local/sbin/puppet_perfsonar_configure_regular_testing': ensure => 'file', diff --git a/templates/configure_regular_testing.erb b/templates/configure_regular_testing.erb index d3a34d4..b65291c 100644 --- a/templates/configure_regular_testing.erb +++ b/templates/configure_regular_testing.erb @@ -2,7 +2,7 @@ #set esmond env variables export ESMOND_ROOT=<%= @esmondroot %> -export ESMOND_CONF=/etc/esmond/esmond.conf +export ESMOND_CONF=<%= @esmondconf -%>/esmond.conf export DJANGO_SETTINGS_MODULE=esmond.settings #initialize python @@ -35,4 +35,4 @@ fi if [ -f /opt/perfsonar_ps/PingER/etc/pinger-landmarks.xml -o /opt/perfsonar_ps/perfsonarbuoy_ma/etc/owmesh.conf ]; then /opt/perfsonar_ps/toolkit/scripts/upgrade/upgrade_regular_tests fi -touch /var/lib/perfsonar/regulartesting/.configured.puppet +touch <%= @libpath -%>/.configured.puppet From 2bc8f58738b5f8e5609eb15debe8449f61594a83 Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Tue, 15 Mar 2016 12:50:05 +0000 Subject: [PATCH 25/26] Rewriting ls_registration_daemon config and admin info template to append infos to the right file, /etc/perfsonar/lsregistrationdaemon.conf, as administrative_info is currently ignored --- manifests/ls_registration_daemon/config.pp | 16 ++++++++++++---- templates/administrative_info.erb | 20 ++++++++++++++------ 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/manifests/ls_registration_daemon/config.pp b/manifests/ls_registration_daemon/config.pp index e7d67eb..7ebc5d9 100644 --- a/manifests/ls_registration_daemon/config.pp +++ b/manifests/ls_registration_daemon/config.pp @@ -1,8 +1,9 @@ class perfsonar::ls_registration_daemon::config( - $snotify = $::perfsonar::params::ls_registration_daemon_snotify, - $loglvl = $::perfsonar::params::ls_registration_daemon_loglvl, - $logger = $::perfsonar::params::ls_registration_daemon_logger, - $logfile = $::perfsonar::params::ls_registration_daemon_logfile, + $snotify = $::perfsonar::params::ls_registration_daemon_snotify, + $loglvl = $::perfsonar::params::ls_registration_daemon_loglvl, + $logger = $::perfsonar::params::ls_registration_daemon_logger, + $logfile = $::perfsonar::params::ls_registration_daemon_logfile, + $admininfo = {}, ) inherits perfsonar::params { $tn = $snotify ? { false => undef, @@ -16,4 +17,11 @@ content => template("${module_name}/log4perl-logger.conf.erb"), notify => $tn, } + + # TODO: use Augeas to write this config instead of a cat + exec { 'append_info': + command => '/bin/cat /etc/perfsonar/toolkit/administrative_info >> /etc/perfsonar/lsregistrationdaemon.conf', + unless => '/bin/grep site_project /etc/perfsonar/lsregistrationdaemon.conf > /dev/null', + require => File['/etc/perfsonar/toolkit/administrative_info'], + } } diff --git a/templates/administrative_info.erb b/templates/administrative_info.erb index 5af8c54..55b15ef 100644 --- a/templates/administrative_info.erb +++ b/templates/administrative_info.erb @@ -1,14 +1,22 @@ <% unless @admininfo && @admininfo.has_key?('site_project') -%> -site_project=<%= @site_project %> +site_project <%= @site_project %> <% end if @admininfo - @admininfo.keys.sort.each do |k| -%> -<% if k != 'site_project' -%> -<%= k %>=<%= @admininfo[k] %> + @admininfo.each do |k, v| -%> +<% if k != 'site_project' and k != 'administrator'-%> +<%= k %> <%= v %> +<% elsif k == 'site_project' -%> +<% v.each do |p| -%> +site_project <%= p %> +<% end -%> <% else -%> -<% @admininfo[k].each do |p| -%> -site_project=<%= p %> + +<% v.each do |p| -%> +<% p.each do |kel, vel| -%> + <%= kel %> <%= vel %> +<% end -%> <% end -%> + <% end -%> <% end end -%> From e85cc77a803fc85107f9a8a1899b3e51d0cf5f1a Mon Sep 17 00:00:00 2001 From: Federico Melaccio Date: Thu, 31 Mar 2016 12:09:35 +0100 Subject: [PATCH 26/26] Notifying lsregistration service when administrative info are appended to its config file --- manifests/ls_registration_daemon/config.pp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/manifests/ls_registration_daemon/config.pp b/manifests/ls_registration_daemon/config.pp index 7ebc5d9..8c07b6f 100644 --- a/manifests/ls_registration_daemon/config.pp +++ b/manifests/ls_registration_daemon/config.pp @@ -21,7 +21,8 @@ # TODO: use Augeas to write this config instead of a cat exec { 'append_info': command => '/bin/cat /etc/perfsonar/toolkit/administrative_info >> /etc/perfsonar/lsregistrationdaemon.conf', - unless => '/bin/grep site_project /etc/perfsonar/lsregistrationdaemon.conf > /dev/null', + unless => '/bin/grep ^site_project /etc/perfsonar/lsregistrationdaemon.conf > /dev/null', require => File['/etc/perfsonar/toolkit/administrative_info'], + notify => Service['perfsonar-lsregistrationdaemon'] } }