summaryrefslogtreecommitdiff
path: root/manifests/puppet.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/puppet.pp')
-rw-r--r--manifests/puppet.pp41
1 files changed, 41 insertions, 0 deletions
diff --git a/manifests/puppet.pp b/manifests/puppet.pp
new file mode 100644
index 0000000..b783e99
--- /dev/null
+++ b/manifests/puppet.pp
@@ -0,0 +1,41 @@
+# This classes manage a puppet installation, and provide for a puppetd
+# service and a puppetmasterd service, the latter constantly updated by a
+# cron-job which git-pushes from '/var/git/repositories/puppet.git'.
+
+# guarantees puppet user, group and ownerships
+class puppet {
+ user { "puppet":
+ ensure => present,
+ allowdupe => false,
+ }
+
+ group { "puppet":
+ ensure => present,
+ allowdupe => false,
+ }
+
+ file { "/etc/puppet":
+ ensure => directory,
+ owner => puppet,
+ group => puppet,
+ recurse => inf,
+ require => User["puppet"],
+ }
+
+ file { "/usr/local/sbin/check-puppetd.sh":
+ source => "puppet://$server/modules/puppet/check-puppetd.sh",
+ owner => "puppet",
+ group => "puppet",
+ mode => 0755,
+ ensure => present,
+ }
+
+ cron { "puppetd-check":
+ command => "/usr/local/sbin/check-puppetd.sh &> /dev/null",
+ user => root,
+ hour => "*/1",
+ minute => "0",
+ require => File["/usr/local/sbin/check-puppetd.sh"],
+ ensure => present,
+ }
+}