Puppet Class: masterless::puppet::package
- Defined in:
- manifests/puppet/package.pp
Summary
A short summary of the purpose of this classOverview
A description of what this class does
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'manifests/puppet/package.pp', line 7
class masterless::puppet::package (
String[1] $pkgbasename = '',
) {
$pkgdmgurl = $facts['os']['release']['major'] ? {
'15' => "https://downloads.puppetlabs.com/mac/puppet6/10.11/x86_64/${pkgbasename}.osx10.11.dmg", # El Capitan
'16' => "https://downloads.puppetlabs.com/mac/puppet6/10.12/x86_64/${pkgbasename}.osx10.12.dmg", # Sierra
'17' => "https://downloads.puppetlabs.com/mac/puppet6/10.13/x86_64/${pkgbasename}.osx10.13.dmg", # High Sierra
'18' => "https://downloads.puppetlabs.com/mac/puppet6/10.14/x86_64/${pkgbasename}.osx10.14.dmg", # Mojave
}
if $facts['os']['family'] != 'Darwin' {
warning('The masterless::package class only supports macOS.')
} elsif $facts['puppet_user'] != 'root' {
warning('Can only manage puppet-agent pkgdmg when running as root, skipping...')
} else {
# TODO: Bug? Puppet skips this resource if dots in filename
package { regsubst($pkgbasename, '\.', '_', 'G'):
ensure => installed,
provider => pkgdmg,
source => $pkgdmgurl,
}
}
}
|