summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormh <mh@immerda.ch>2013-05-20 18:54:13 +0200
committermh <mh@immerda.ch>2013-05-20 18:54:13 +0200
commit39f1218960348d43bd368bff546d9467a1264e0d (patch)
treeb25b37b9003f02f3226a3cf949e4938e8511808e
parent8e43dc85da5a5e45e88aef5f7c32c9cc1c35201c (diff)
debian's service provider has some issues if the script is absent, we can workaround this problem using the trick of this patch
-rw-r--r--manifests/disable.pp13
-rw-r--r--manifests/disable/base.pp12
-rw-r--r--manifests/disable/debian.pp7
3 files changed, 23 insertions, 9 deletions
diff --git a/manifests/disable.pp b/manifests/disable.pp
index f41e03c..c233ec6 100644
--- a/manifests/disable.pp
+++ b/manifests/disable.pp
@@ -1,12 +1,7 @@
+# remove postfix
class postfix::disable {
-
- service{'postfix':
- ensure => stopped,
- enable => false,
+ case $::operatingsystem {
+ debian: { include postfix::disable::debian }
+ default: { include postfix::disable::base }
}
- package{'postfix':
- ensure => absent,
- require => Service['postfix'],
- }
-
}
diff --git a/manifests/disable/base.pp b/manifests/disable/base.pp
new file mode 100644
index 0000000..5c56c70
--- /dev/null
+++ b/manifests/disable/base.pp
@@ -0,0 +1,12 @@
+class postfix::disable::base {
+
+ service{'postfix':
+ ensure => stopped,
+ enable => false,
+ }
+ package{'postfix':
+ ensure => absent,
+ require => Service['postfix'],
+ }
+
+}
diff --git a/manifests/disable/debian.pp b/manifests/disable/debian.pp
new file mode 100644
index 0000000..dc48578
--- /dev/null
+++ b/manifests/disable/debian.pp
@@ -0,0 +1,7 @@
+# debian has some issues with absent
+# init scripts
+class postfix::disable::debian inherits postfix::disable::base {
+ Service['postfix']{
+ hasstatus => false,
+ }
+}