X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fferm%2Fmanifests%2Fmodule.pp;h=8ef922568cda12de1440c297fb7aa683658afa0f;hb=12c607617cee322d46d3f1edbd92f4e5ba2f3d4c;hp=cec6496f79883e1873b799534c355e87e63874f3;hpb=59963405a47cc9a41af273aff5cac242af17a018;p=mirror%2Fdsa-puppet.git diff --git a/modules/ferm/manifests/module.pp b/modules/ferm/manifests/module.pp index cec6496f7..8ef922568 100644 --- a/modules/ferm/manifests/module.pp +++ b/modules/ferm/manifests/module.pp @@ -1,12 +1,31 @@ define ferm::module ( - $module, $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 + } + + $hook_prefix = $::lsbdistcodename ? { + squeeze => '', + default => '@', + } + + if $::kernel == 'Linux' { + file { "/etc/ferm/conf.d/load_${module}.conf": + ensure => $ensure, + content => template('ferm/load_module.erb'), + require => Package['ferm'], + notify => Service['ferm'] + } } }