# 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
}
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
'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,
}