summaryrefslogtreecommitdiff
path: root/manifests/puppetd.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/puppetd.pp')
-rw-r--r--manifests/puppetd.pp40
1 files changed, 40 insertions, 0 deletions
diff --git a/manifests/puppetd.pp b/manifests/puppetd.pp
new file mode 100644
index 0000000..a26bba2
--- /dev/null
+++ b/manifests/puppetd.pp
@@ -0,0 +1,40 @@
+# handles puppetd service
+class puppetd inherits puppet {
+
+ package { "cron": ensure => installed, }
+
+ package { "puppet":
+ ensure => installed,
+ require => Package["cron"],
+ }
+
+ service { "puppet":
+ enable => true,
+ ensure => running,
+ hasrestart => true,
+ require => Package["puppet"],
+ }
+
+ # default config file for puppet nodes
+ case $puppetmasterd_present {
+ false: {
+ file { "/etc/puppet/puppet.conf":
+ ensure => file,
+ owner => puppet,
+ group => puppet,
+ mode => 0644,
+ content => template("puppet/puppet-node.conf.erb"),
+ }
+ }
+ }
+
+ # cron rule to restart puppet minutes after puppetmaster is restarted
+ cron { "puppet-restart":
+ command => "/etc/init.d/puppet restart &> /dev/null",
+ user => root,
+ hour => "*/1",
+ minute => "10",
+ ensure => absent,
+ require => Service["puppet"],
+ }
+}