summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/debian/module.pp24
1 files changed, 14 insertions, 10 deletions
diff --git a/manifests/debian/module.pp b/manifests/debian/module.pp
index 4c100fa..252948f 100644
--- a/manifests/debian/module.pp
+++ b/manifests/debian/module.pp
@@ -1,3 +1,4 @@
+# install/remove apache module on debian/ubuntu systems
define apache::debian::module(
$ensure = present,
$package_name = 'absent'
@@ -6,30 +7,33 @@ define apache::debian::module(
if ($package_name != 'absent') {
package { $package_name:
- ensure => $ensure,
- notify => Service['apache'],
- require => Package['apache'],
+ ensure => $ensure,
+ notify => Service['apache'],
+ require => [ File['modules_dir'], Package['apache'] ],
}
}
case $ensure {
'absent','purged': {
exec { "/usr/sbin/a2dismod ${name}":
- onlyif => "/bin/sh -c '[ -L ${modules_dir}-enabled/${name}.load ] \\
+ onlyif => "/bin/sh -c '[ -L ${modules_dir}-enabled/${name}.load ] \\
&& [ ${modules_dir}-enabled/${name}.load -ef ${modules_dir}-available/${name}.load ]'",
- notify => Service['apache'],
+ notify => Service['apache'],
require => Package['apache'],
}
}
default : {
exec { "/usr/sbin/a2enmod ${name}":
- unless => "/bin/sh -c '[ -L ${modules_dir}-enabled/${name}.load ] \\
+ unless => "/bin/sh -c '[ -L ${modules_dir}-enabled/${name}.load ] \\
&& [ ${modules_dir}-enabled/${name}.load -ef ${modules_dir}-available/${name}.load ]'",
- notify => Service['apache'],
- require => $package_name ? {
+ notify => Service['apache'],
+ require => [
+ File['modules_dir'],
+ $package_name ? {
'absent' => Package['apache'],
- default => Package[['apache',$package_name]],
- },
+ default => Package[['apache',$package_name]],
+ }
+ ],
}
}
}