manage danzi/main pg_hba
[mirror/dsa-puppet.git] / modules / ferm / manifests / module.pp
index e305611..e5c1d5f 100644 (file)
@@ -1,12 +1,26 @@
 define ferm::module (
-       $hookstage='pre',
-       $module=$title,
-       $ensure=present
+  $hookstage='pre',
+  $mod=undef,
+  $ensure=present
 ) {
-       file { "/etc/ferm/conf.d/load_${module}.conf":
-               ensure  => $ensure,
-               content => template('ferm/load_module.erb'),
-               require => Package['ferm'],
-               notify  => Service['ferm']
-       }
+
+  case $ensure {
+    present,absent: {}
+    default: { fail ( "Invalid ensure `${ensure}' for ${name}" ) }
+  }
+
+  if $mod {
+    $module = $mod
+  } else {
+    $module = $title
+  }
+
+  if $::kernel == 'Linux' {
+    file { "/etc/ferm/conf.d/load_${module}.conf":
+      ensure  => $ensure,
+      content => template('ferm/load_module.erb'),
+      require => Package['ferm'],
+      notify  => Exec['ferm reload']
+    }
+  }
 }