X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=manifests%2Fpin.pp;h=f19df00f230f859d03674afad42a35ff4f532243;hb=d28de442663dbb6f982e8d8e28c2956171cf9810;hp=29fddfb85ae4656369c023b1e2522bf909f2ff5c;hpb=f3ef62a6c601efa83c8ac7c2ff714d77f80c2b51;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/manifests/pin.pp b/manifests/pin.pp index 29fddfb..f19df00 100644 --- a/manifests/pin.pp +++ b/manifests/pin.pp @@ -5,19 +5,28 @@ define apt::pin( $ensure = present, $packages = '*', $priority = 0, - $release = $name + $release = '', + $origin = '' ) { include apt::params $preferences_d = $apt::params::preferences_d + if $release != '' { + $pin = "release a=${release}" + } elsif $origin != '' { + $pin = "origin \"${origin}\"" + } else { + err("Apt::Pin needs either $release or $origin") + } + file { "${name}.pref": ensure => $ensure, path => "${preferences_d}/${name}", owner => root, group => root, mode => '0644', - content => "# ${name}\nPackage: ${packages}\nPin: release a=${release}\nPin-Priority: ${priority}", + content => template("apt/pin.pref.erb"), } }