e5f2dfe294
With the addition of this patch two new defines will be added; one to manage APT configuration files (apt::conf) and one that abstracts out the requirements needed to turn on backport repositories (apt::backports). In addition, the patch takes the opportunity to clean up variable definitions so they follow a consistent pattern of setting local variables to the fully qualified value stored in the apt::params class. Previously all variable used within a class directly addressed the apt::params namespace when ever the variable was used. In the pattern they now adhere to we can more easily switch the namespace data lives in or externalize it even more using hiera.
21 lines
509 B
Puppet
21 lines
509 B
Puppet
# force.pp
|
|
# force a package from a specific release
|
|
|
|
define apt::force(
|
|
$release = 'testing',
|
|
$version = false
|
|
) {
|
|
|
|
$version_string = $version ? {
|
|
false => undef,
|
|
default => "=${version}",
|
|
}
|
|
|
|
$install_check = $version ? {
|
|
false => "/usr/bin/dpkg -s ${name} | grep -q 'Status: install'",
|
|
default => "/usr/bin/dpkg -s ${name} | grep -q 'Version: ${version}'",
|
|
}
|
|
exec { "/usr/bin/aptitude -y -t ${release} install ${name}${version_string}":
|
|
unless => $install_check,
|
|
}
|
|
}
|