61 lines
1.5 KiB
Puppet
61 lines
1.5 KiB
Puppet
# Install and configure Puppet client.
|
|
#
|
|
class puppet::client {
|
|
|
|
case $operatingsystem {
|
|
openbsd: { $vardir = "/var/puppet" }
|
|
default: { $vardir = "/var/lib/puppet" }
|
|
}
|
|
|
|
case $operatingsystem {
|
|
centos,fedora: {
|
|
package { "ruby-shadow":
|
|
ensure => installed,
|
|
}
|
|
}
|
|
}
|
|
|
|
package { "puppet":
|
|
name => $operatingsystem ? {
|
|
openbsd => "ruby-puppet",
|
|
default => "puppet",
|
|
},
|
|
ensure => present,
|
|
}
|
|
|
|
file { "/etc/puppet/puppet.conf":
|
|
ensure => present,
|
|
content => template("puppet/puppet.conf.erb"),
|
|
mode => 0600,
|
|
owner => root,
|
|
group => $operatingsystem ? {
|
|
openbsd => wheel,
|
|
default => root
|
|
},
|
|
require => Package["puppet"],
|
|
notify => Service["puppet"],
|
|
}
|
|
|
|
case $operatingsystem {
|
|
openbsd: {
|
|
service { "puppet":
|
|
ensure => running,
|
|
enable => true,
|
|
binary => "/usr/local/bin/puppetd",
|
|
start => "/usr/local/bin/puppetd",
|
|
restart => "/usr/bin/pkill -HUP -f /usr/local/bin/puppetd",
|
|
pattern => puppetd,
|
|
require => Package["puppet"],
|
|
}
|
|
}
|
|
default: {
|
|
service { "puppet":
|
|
ensure => running,
|
|
enable => true,
|
|
hasrestart => true,
|
|
require => Package["puppet"],
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|