- change profiles::puppet::agent to require Yumrepo['puppet']
- remove managed repos hieradata
- remove profiles:😋:* classes that are not required
- remove missed rebase comment
51 lines
1.3 KiB
Puppet
51 lines
1.3 KiB
Puppet
# profiles::puppet::agent
|
|
# This class manages Puppet agent package and service.
|
|
class profiles::puppet::agent (
|
|
String $puppet_version = 'latest',
|
|
) {
|
|
|
|
# if puppet-version is anything other than latest, set a versionlock
|
|
$puppet_versionlock_ensure = $puppet_version ? {
|
|
'latest' => 'absent',
|
|
default => 'present',
|
|
}
|
|
$puppet_versionlock_version = $puppet_version ? {
|
|
'latest' => undef,
|
|
default => $puppet_version,
|
|
}
|
|
|
|
case $facts['os']['family'] {
|
|
'RedHat': {
|
|
# Ensure the puppet-agent package is installed and locked to a specific version
|
|
package { 'puppet-agent':
|
|
ensure => $puppet_version,
|
|
require => Yumrepo['puppet'],
|
|
}
|
|
|
|
# versionlock puppet-agent
|
|
yum::versionlock{'puppet-agent':
|
|
ensure => $puppet_versionlock_ensure,
|
|
version => $puppet_versionlock_version,
|
|
}
|
|
}
|
|
'Debian': {
|
|
# Ensure the puppet-agent package is installed and locked to a specific version
|
|
package { 'puppet-agent':
|
|
ensure => $puppet_version,
|
|
require => Class['profiles::apt::puppet7'],
|
|
}
|
|
}
|
|
default: {}
|
|
}
|
|
|
|
# Ensure the puppet service is running
|
|
service { 'puppet':
|
|
ensure => 'running',
|
|
enable => true,
|
|
hasrestart => true,
|
|
require => Package['puppet-agent'],
|
|
}
|
|
|
|
}
|
|
|