Puppet Class: yum
- Inherits:
- yum::params
- Defined in:
- manifests/init.pp
Overview
Class: yum
Manage Yum configuration.
Parameters:
[*keepcache*] - Yum option keepcache
[*debuglevel*] - Yum option debuglevel
[*exactarch*] - Yum option exactarch
[*obsoletes*] - Yum option obsoletes
[*gpgcheck*] - Yum option gpgcheck
[*installonly_limit*] - Yum option installonly_limit
[*keep_kernel_devel*] - On old kernels purge keep devel packages.
Actions:
Requires:
RPM based system
Sample usage:
class { 'yum':
installonly_limit => 2,
}
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'manifests/init.pp', line 24
class yum (
$keepcache = $yum::params::keepcache,
$debuglevel = $yum::params::debuglevel,
$exactarch = $yum::params::exactarch,
$obsoletes = $yum::params::obsoletes,
$gpgcheck = $yum::params::gpgcheck,
$installonly_limit = $yum::params::installonly_limit,
$keep_kernel_devel = $yum::params::keep_kernel_devel
) inherits yum::params {
validate_bool($keepcache, $exactarch, $obsoletes, $gpgcheck)
validate_bool($keep_kernel_devel)
unless is_integer($installonly_limit) {
validate_string($installonly_limit)
}
unless is_integer($debuglevel) {
validate_string($debuglevel)
}
# configure Yum
yum::config { 'keepcache':
ensure => bool2num($keepcache),
}
yum::config { 'debuglevel':
ensure => $debuglevel,
}
yum::config { 'exactarch':
ensure => bool2num($exactarch)
}
yum::config { 'obsoletes':
ensure => bool2num($obsoletes)
}
yum::config { 'gpgcheck':
ensure => bool2num($gpgcheck)
}
yum::config { 'installonly_limit':
ensure => $installonly_limit,
notify => Exec['package-cleanup_oldkernels'],
}
# cleanup old kernels
ensure_packages(['yum-utils'])
$_pc_cmd = delete_undef_values([
'/usr/bin/package-cleanup',
'--oldkernels',
"--count=${installonly_limit}",
'-y',
$keep_kernel_devel ? {
true => '--keepdevel',
default => undef,
},
])
exec { 'package-cleanup_oldkernels':
command => shellquote($_pc_cmd),
refreshonly => true,
require => Package['yum-utils'],
}
}
|