Merge pull request #58 from nanliu/tb/ppa
[puppet-modules/puppetlabs-apt.git] / manifests / pin.pp
1 # pin.pp
2 # pin a release in apt, useful for unstable repositories
3
4 define apt::pin(
5   $ensure   = present,
6   $packages = '*',
7   $priority = 0,
8   $release  = $name
9 ) {
10
11   include apt::params
12
13   $preferences_d = $apt::params::preferences_d
14
15   file { "${name}.pref":
16     ensure  => $ensure,
17     path    => "${preferences_d}/${name}",
18     owner   => root,
19     group   => root,
20     mode    => '0644',
21     content => "# ${name}\nPackage: ${packages}\nPin: release a=${release}\nPin-Priority: ${priority}",
22   }
23 }