]> git.donarmstrong.com Git - dsa-puppet.git/blob - modules/debian-org/manifests/init.pp
I'm getting tired of finding stuck cron daemons
[dsa-puppet.git] / modules / debian-org / manifests / init.pp
1 class debian-org {
2    package { "userdir-ldap": ensure => installed;
3              "zsh": ensure => installed;
4              "cron": ensure => installed;
5              "apt-utils": ensure => installed;
6              "tcsh": ensure => installed;
7              "pdksh": ensure => installed;
8              "ksh": ensure => installed;
9              "csh": ensure => installed;
10              "ntp": ensure => installed;
11              "locales-all": ensure => installed;
12              "libpam-pwdfile": ensure => installed;
13              "vim": ensure => installed;
14              "gnupg": ensure => installed;
15              "bzip2": ensure => installed;
16              "less": ensure => installed;
17              "ed": ensure => installed;
18              "puppet": ensure => installed;
19              "mtr-tiny": ensure => installed;
20              "nload": ensure => installed;
21              "pciutils": ensure => installed;
22              "dnsutils": ensure => installed;
23              "bash-completion": ensure => installed;
24              "libfilesystem-ruby1.8": ensure => installed;
25              "syslog-ng": ensure => installed;
26              "sysklogd": ensure => purged;
27              "klogd": ensure => purged;
28              "rsyslog": ensure => purged;
29    }
30    file {
31       "/etc/apt/preferences":
32              source => "puppet:///files/etc/apt/preferences";
33       "/etc/apt/sources.list.d/backports.org.list":
34              source => "puppet:///files/etc/apt/sources.list.d/backports.org.list",
35              notify  => Exec["apt-get update"];
36       "/etc/apt/sources.list.d/debian.org.list":
37              source => "puppet:///files/etc/apt/sources.list.d/debian.org.list",
38              notify  => Exec["apt-get update"];
39       "/etc/apt/sources.list.d/security.list":
40              source => "puppet:///files/etc/apt/sources.list.d/security.list",
41              notify  => Exec["apt-get update"];
42       "/etc/apt/sources.list.d/volatile.list":
43              source => "puppet:///files/etc/apt/sources.list.d/volatile.list",
44              notify  => Exec["apt-get update"];
45       "/etc/apt/apt.conf.d/local-recommends":
46              source => "puppet:///files/etc/apt/apt.conf.d/local-recommends";
47       "/etc/apt/apt.conf.d/local-pdiffs":
48              source => "puppet:///files/etc/apt/apt.conf.d/local-pdiffs";
49       "/etc/timezone":
50              source => "puppet:///files/etc/timezone",
51              notify => Exec["dpkg-reconfigure tzdata -pcritical -fnoninteractive"];
52       "/etc/puppet/puppet.conf":
53              source => "puppet:///files/etc/puppet/puppet.conf",
54              notify  => Exec["puppet reload"];
55       "/etc/default/puppet":
56              source => "puppet:///files/etc/default/puppet",
57              notify  => Exec["puppet restart"];
58
59       "/etc/syslog-ng/syslog-ng.conf":
60              source => "puppet:///files/etc/syslog-ng/syslog-ng.conf",
61              notify  => Exec["syslog-ng reload"],
62              ;
63       "/etc/logrotate.d/syslog-ng":
64              source => "puppet:///files/etc/logrotate.d/syslog-ng",
65              ;
66       "/etc/cron.d/dsa-puppet-stuff":
67              source => "puppet:///files/etc/cron.d/dsa-puppet-stuff",
68              require => Package["cron"]
69              ;
70    }
71    case $hostname {
72         handel: {
73             file {
74                "/etc/puppet/lib":
75                       ensure  => directory,
76                       source => "puppet:///files/etc/puppet/lib",
77                       recurse => true,
78                       notify  => Exec["puppetmaster restart"];
79             }
80         }
81         default: {}
82    }
83
84    exec { "puppet reload":
85              path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
86              refreshonly => true,
87    }
88    exec { "puppetmaster restart":
89              path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
90              refreshonly => true,
91    }
92    exec { "puppet restart":
93              path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
94              refreshonly => true,
95    }
96    exec { "syslog-ng reload":
97              path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
98              refreshonly => true,
99    }
100    exec { "dpkg-reconfigure tzdata -pcritical -fnoninteractive":
101            path        => "/usr/bin:/usr/sbin:/bin:/sbin",
102            refreshonly => true,
103    }
104    exec { "apt-get update":
105              command => 'apt-get update',
106              path        => "/etc/init.d:/usr/bin:/usr/sbin:/bin:/sbin",
107              refreshonly => true
108    }
109 }
110
111 class debian-proliant inherits debian-org {
112    package {
113       "hpacucli": ensure => installed;
114       "cpqarrayd": ensure => installed;
115       "arrayprobe": ensure => installed;
116    }
117    file {
118       "/etc/apt/sources.list.d/debian.restricted.list":
119              source => "puppet:///files/etc/apt/sources.list.d/debian.restricted.list",
120              notify  => Exec["apt-get update"];
121    }
122 }