summaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
authorMarkus Strauss <Markus@ITstrauss.eu>2011-10-30 17:41:19 -0400
committerMarkus Strauss <Markus@ITstrauss.eu>2011-10-30 17:41:19 -0400
commitc8ce27d10ebdfc91de5579c47c808a1d41b94223 (patch)
tree33d9514f04dfcd5f4765db099f8847485574517c /manifests
parent22946cbbade150e9a3d8e7d0c0b1ad585182b30f (diff)
downloadpuppet-runit-c8ce27d10ebdfc91de5579c47c808a1d41b94223.tar.gz
puppet-runit-c8ce27d10ebdfc91de5579c47c808a1d41b94223.tar.bz2
added ability to configure the finish script and provide a simple default one
Diffstat (limited to 'manifests')
-rw-r--r--manifests/service.pp17
1 files changed, 15 insertions, 2 deletions
diff --git a/manifests/service.pp b/manifests/service.pp
index 5d7d928..4f886cf 100644
--- a/manifests/service.pp
+++ b/manifests/service.pp
@@ -3,12 +3,16 @@ define runit::service (
$group = root, # the service's group name
$enable = true, # shall the service be linked to /etc/service
$ensure = present, # shall the service be present in /etc/sv
- # either one of these three must be declared - it defines the content of the run script /etc/sv/$name/run
+ # start command - either one of these three must be declared - it defines the content of the run script /etc/sv/$name/run
$command = undef, # the most simple way; just state command here - it may not daemonize itself,
# but rather stay in the foreground; all output is logged automatically to $logdir/current
# this uses a default template which provides logging
$source = undef, # specify a source file on your puppet master
$content = undef, # specify the content directly (mostly via 'template')
+ # finish command - defines the content of the finish script /etc/sv/$name/finish
+ $finish_command = '',
+ $finish_source = undef,
+ $finish_content = undef,
# service directory - this is required if you use 'command'
$rundir = undef,
# logging stuff
@@ -63,8 +67,17 @@ define runit::service (
ensure => $ensure,
mode => 755,
;
+ "${svbase}/finish":
+ content => $finish_content ? {
+ undef => template('runit/finish.erb'),
+ default => $finish_content,
+ },
+ source => $finish_source,
+ ensure => $ensure,
+ mode => 755,
+ ;
}
-
+
# eventually enabling the service
if $ensure == present and $enable == true {
$_ensure_enabled = present