(GH-cat-9) syntax:hiera:yaml fixes
[puppet-modules/puppetlabs-apt.git] / manifests / backports.pp
index 080c83dd350eb2a8027f88d691ace3f2e2f81bc8..1a9ea1bcaefb4c629209cc25543b9e63308d6757 100644 (file)
@@ -21,7 +21,7 @@
 #
 # @param release
 #   Specifies a distribution of the Apt repository containing the backports to manage. Used in populating the `source.list` configuration file.
-#   Default: on Debian and Ubuntu, `${facts['os']['distro']['codename']}-backports`. We recommend keeping this default, except on other operating
+#   Default: on Debian and Ubuntu, `${fact('os.distro.codename')}-backports`. We recommend keeping this default, except on other operating
 #   systems.
 #
 # @param repos
@@ -53,8 +53,8 @@ class apt::backports (
   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              = {},
+  Variant[Integer, String, Hash] $pin           = 200,
+  Variant[Hash] $include                        = {},
 ) {
   include apt
 
@@ -79,7 +79,11 @@ class apt::backports (
     $_location = $::apt::backports['location']
   }
   unless $release {
-    $_release = "${facts['os']['distro']['codename']}-backports"
+    if fact('os.distro.codename') {
+      $_release = "${fact('os.distro.codename')}-backports"
+    } else {
+      fail('os.distro.codename fact not available: release parameter required')
+    }
   }
   unless $repos {
     $_repos = $::apt::backports['repos']