summaryrefslogtreecommitdiff
path: root/manifests/repo/update.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/repo/update.pp')
-rw-r--r--manifests/repo/update.pp29
1 files changed, 29 insertions, 0 deletions
diff --git a/manifests/repo/update.pp b/manifests/repo/update.pp
new file mode 100644
index 0000000..6dc4254
--- /dev/null
+++ b/manifests/repo/update.pp
@@ -0,0 +1,29 @@
+class puppet::repo::update(
+ $ensure = present,
+ $method = hiera('puppet::update::method', 'cron')
+) {
+ class { 'puppet::repo':
+ method => $method,
+ }
+
+ # puppet update script
+ file { "/usr/local/sbin/update-puppet-conf.sh":
+ source => "puppet:///modules/puppet/update-puppet-conf.sh",
+ owner => "puppet",
+ group => "puppet",
+ mode => 0750,
+ ensure => present,
+ }
+
+ # 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 => $method ? {
+ 'cron' => $ensure,
+ default => absent,
+ },
+ require => [ File["/usr/local/sbin/update-puppet-conf.sh"], User["puppet"] ],
+ }
+}