aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/init.pp38
1 files changed, 21 insertions, 17 deletions
diff --git a/manifests/init.pp b/manifests/init.pp
index 05707d7..1cef3e6 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -15,30 +15,34 @@ class ikiwiki {
mode => 755,
}
- define instance() {
+ define instance($ensure = 'present') {
file { "/etc/ikiwiki/$name.setup":
- ensure => present,
+ ensure => $ensure,
content => template('ikiwiki/ikiwiki.setup.erb'),
owner => root,
group => root,
mode => 644,
}
- exec { "ikiwiki --setup /etc/ikiwiki/$name.setup":
- user => gitosis,
- refreshonly => true,
- }
-
- exec { "/usr/local/sbin/ikiwiki-deploy $name":
- unless => "/bin/sh -c [ -f '${apache_sites_folder}/${name}_src/index.mdw' ]",
- }
-
- file { [ "${apache_sites_folder}/${name}_src" ]:
- ensure => directory,
- owner => gitosis,
- group => gitosis,
- recurse => true,
- notify => Exec["ikiwiki --setup /etc/ikiwiki/$name.setup"],
+ case $ensure {
+ 'present': {
+ exec { "ikiwiki --setup /etc/ikiwiki/$name.setup":
+ user => gitosis,
+ refreshonly => true,
+ }
+
+ exec { "/usr/local/sbin/ikiwiki-deploy $name":
+ unless => "/bin/sh -c [ -f '${apache_sites_folder}/${name}_src/index.mdw' ]",
+ }
+
+ file { [ "${apache_sites_folder}/${name}_src" ]:
+ ensure => directory,
+ owner => gitosis,
+ group => gitosis,
+ recurse => true,
+ notify => Exec["ikiwiki --setup /etc/ikiwiki/$name.setup"],
+ }
+ }
}
}
}