diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/master/update.pp | 28 | ||||
-rw-r--r-- | manifests/puppetmasterd.pp | 21 |
2 files changed, 31 insertions, 18 deletions
diff --git a/manifests/master/update.pp b/manifests/master/update.pp new file mode 100644 index 0000000..4d6925c --- /dev/null +++ b/manifests/master/update.pp @@ -0,0 +1,28 @@ +class puppet::master::update { + # cron rule to update puppet config repository every 5 minutes + cron { "puppet-update": + command => "/usr/local/sbin/update-puppet-conf.sh > /dev/null 2>&1", + user => puppet, + minute => "*/5", + ensure => present, + require => [ File["/usr/local/sbin/update-puppet-conf.sh"], User["puppet"] ], + } + + # and the script to the cron-job above + file { "/usr/local/sbin/update-puppet-conf.sh": + source => "puppet:///modules/puppet/update-puppet-conf.sh", + owner => "puppet", + group => "puppet", + mode => 0755, + ensure => present, + } + + # TODO: use a post-update hook instead of the cronjob + file { '/var/git/repositories/puppet.git/hooks/post-update': + ensure => absent, + mode => 0755, + owner => gitolite, + group => gitolite, + source => "puppet:///modules/puppet/post-update.sh", + } +} diff --git a/manifests/puppetmasterd.pp b/manifests/puppetmasterd.pp index b0bd3e0..16a79dd 100644 --- a/manifests/puppetmasterd.pp +++ b/manifests/puppetmasterd.pp @@ -92,15 +92,6 @@ class puppetmasterd { require => User["puppet"], } - # cron rule to update puppet config repository every 5 minutes - cron { "puppet-update": - command => "/usr/local/sbin/update-puppet-conf.sh > /dev/null 2>&1", - user => puppet, - minute => "*/5", - ensure => present, - require => [ File["/usr/local/sbin/update-puppet-conf.sh"], User["puppet"] ], - } - # cron rule to restart puppetmaster before restarting the nodes cron { "puppetmaster-restart": command => "/etc/init.d/puppetmaster restart > /dev/null 2>&1", @@ -124,6 +115,9 @@ class puppetmasterd { }, require => File["/usr/local/sbin/puppetlast"], } + + # update config + include puppet::master::update # custom puppetlast command, thanks to immerda module: # http://git.puppet.immerda.ch/?p=module-puppet.git;a=summary @@ -138,15 +132,6 @@ class puppetmasterd { mode => 0700, } - # and the script to the cron-job above - file { "/usr/local/sbin/update-puppet-conf.sh": - source => "puppet://$server/modules/puppet/update-puppet-conf.sh", - owner => "puppet", - group => "puppet", - mode => 0755, - ensure => present, - } - # for storeconfigs include mysql::server |