Merge pull request #58 from nanliu/tb/ppa
[puppet-modules/puppetlabs-apt.git] / manifests / force.pp
1 # force.pp
2 # force a package from a specific release
3
4 define apt::force(
5   $release = 'testing',
6   $version = false
7 ) {
8
9   $version_string = $version ? {
10     false   => undef,
11     default => "=${version}",
12   }
13
14   $install_check = $version ? {
15     false   => "/usr/bin/dpkg -s ${name} | grep -q 'Status: install'",
16     default => "/usr/bin/dpkg -s ${name} | grep -q 'Version: ${version}'",
17   }
18   exec { "/usr/bin/aptitude -y -t ${release} install ${name}${version_string}":
19     unless => $install_check,
20   }
21 }