Merge pull request #683 from HelenCampbell/rpreppy
[puppet-modules/puppetlabs-apt.git] / manifests / setting.pp
index b0fb62b1debd8fb5d90c1f86cb0f0bdc5e778a7f..507ec9495d66ac2e6d305f71596996d34e7e1973 100644 (file)
@@ -1,12 +1,11 @@
 define apt::setting (
-  $priority      = 50,
-  $ensure        = file,
-  $source        = undef,
-  $content       = undef,
-  $notify_update = true,
+  Variant[String, Integer, Array] $priority           = 50,
+  Optional[Enum['file', 'present', 'absent']] $ensure = file,
+  Optional[String] $source                            = undef,
+  Optional[String] $content                           = undef,
+  Boolean $notify_update                              = true,
 ) {
 
-  include 'apt::params'
   if $content and $source {
     fail('apt::setting cannot have both content and source')
   }
@@ -15,9 +14,6 @@ define apt::setting (
     fail('apt::setting needs either of content or source')
   }
 
-  validate_re($ensure,  ['file', 'present', 'absent'])
-  validate_bool($notify_update)
-
   $title_array = split($title, '-')
   $setting_type = $title_array[0]
   $base_name = join(delete_at($title_array, 0), '-')
@@ -29,22 +25,14 @@ define apt::setting (
     validate_re($priority, '^\d+$', 'apt::setting priority must be an integer or a zero-padded integer')
   }
 
-  if $source {
-    validate_string($source)
-  }
-
-  if $content {
-    validate_string($content)
-  }
-
   if ($setting_type == 'list') or ($setting_type == 'pref') {
     $_priority = ''
   } else {
     $_priority = $priority
   }
 
-  $_path = $::apt::params::config_files[$setting_type]['path']
-  $_ext  = $::apt::params::config_files[$setting_type]['ext']
+  $_path = $::apt::config_files[$setting_type]['path']
+  $_ext  = $::apt::config_files[$setting_type]['ext']
 
   if $notify_update {
     $_notify = Class['apt::update']