X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=manifests%2Fbackports.pp;h=21f1251ea75a23987b94614080c2f96922702c47;hb=a2ec1c9176c45acba2a047c019567f348531ec4e;hp=a93e14f37eea07a2b64e4f123e168fe01a27e1c9;hpb=6c1fd8e819cc8ffb44ac187bb0fa7051d2958cc6;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/manifests/backports.pp b/manifests/backports.pp index a93e14f..21f1251 100644 --- a/manifests/backports.pp +++ b/manifests/backports.pp @@ -1,7 +1,7 @@ # @summary Manages backports. # -# @example Set up a backport for linuxmint qiana -# apt::backports { 'qiana': +# @example Set up a backport source for Linux Mint qiana +# class { 'apt::backports': # location => 'http://us.archive.ubuntu.com/ubuntu', # release => 'trusty-backports', # repos => 'main universe multiverse restricted', @@ -45,13 +45,20 @@ # Specifies a pin priority for the backports. Valid options: a number or string to be passed to the `id` parameter of the `apt::pin` defined # type, or a hash of `parameter => value` pairs to be passed to `apt::pin`'s corresponding parameters. # +# @param include +# Specifies whether to include 'deb' or 'src', or both. +# class apt::backports ( Optional[String] $location = undef, Optional[String] $release = undef, Optional[String] $repos = undef, Optional[Variant[String, Hash]] $key = undef, Optional[Variant[Integer, String, Hash]] $pin = 200, + Optional[Variant[Hash]] $include = {}, ){ + + include apt + if $location { $_location = $location } @@ -64,24 +71,23 @@ class apt::backports ( if $key { $_key = $key } - if ($facts['lsbdistid'] == 'Debian' or $facts['lsbdistid'] == 'Ubuntu') { - unless $location { - $_location = $::apt::backports['location'] - } - unless $release { - $_release = "${facts['lsbdistcodename']}-backports" - } - unless $repos { - $_repos = $::apt::backports['repos'] - } - unless $key { - $_key = $::apt::backports['key'] - } - } else { + if (!($facts['lsbdistid'] == 'Debian' or $facts['lsbdistid'] == 'Ubuntu')) { unless $location and $release and $repos and $key { - fail('If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key') + fail(translate('If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key')) } } + unless $location { + $_location = $::apt::backports['location'] + } + unless $release { + $_release = "${facts['lsbdistcodename']}-backports" + } + unless $repos { + $_repos = $::apt::backports['repos'] + } + unless $key { + $_key = $::apt::backports['key'] + } if $pin =~ Hash { $_pin = $pin @@ -93,13 +99,14 @@ class apt::backports ( 'release' => $_release, } } else { - fail('pin must be either a string, number or hash') + fail(translate('pin must be either a string, number or hash')) } apt::source { 'backports': location => $_location, release => $_release, repos => $_repos, + include => $include, key => $_key, pin => $_pin, }