diff options
author | Jonathan Boyett <jonathan@failingservers.com> | 2010-12-03 12:35:23 -0800 |
---|---|---|
committer | Jonathan Boyett <jonathan@failingservers.com> | 2010-12-03 12:35:23 -0800 |
commit | fa80fc2b311b689c41b4ee2913f6bfb9f7c159c6 (patch) | |
tree | 9d383a8fe4dfb9ab140794ffb3d1c60b2dc165e6 /manifests | |
parent | 40245d9fccf1c2baa18fcc745e0f1f11d4b0db81 (diff) | |
download | puppet-concat-fa80fc2b311b689c41b4ee2913f6bfb9f7c159c6.tar.gz puppet-concat-fa80fc2b311b689c41b4ee2913f6bfb9f7c159c6.tar.bz2 |
add a -g flag to concatfragments.sh to disable GNU extensions to find, sort and xargs; makes concat work on Solaris.
Add a $gnu parameter to make use of the aforementioned -g flag, and a $order parameter to make use of the -n flag in concatfragments.sh
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/init.pp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/manifests/init.pp b/manifests/init.pp index b94411c..909d7b6 100644 --- a/manifests/init.pp +++ b/manifests/init.pp @@ -87,7 +87,7 @@ # ALIASES: # - The exec can notified using Exec["concat_/path/to/file"] or Exec["concat_/path/to/directory"] # - The final file can be referened as File["/path/to/file"] or File["concat_/path/to/file"] -define concat($mode = 0644, $owner = "root", $group = "root", $warn = "false", $force = "false", $backup = "puppet") { +define concat($mode = 0644, $owner = "root", $group = "root", $warn = "false", $force = "false", $backup = "puppet", $gnu = "true", $order="alpha") { $safe_name = regsubst($name, '/', '_', 'G') $concatdir = $concat::setup::concatdir $version = $concat::setup::majorversion @@ -113,6 +113,18 @@ define concat($mode = 0644, $owner = "root", $group = "root", $warn = "false", $ default: { fail("Improper 'force' value given to concat: $force") } } + case $gnu { + 'true',true,yes,on: { $gnuflag = "" } + 'false',false,no,off: { $gnuflag = "-g" } + default: { fail("Improper 'gnu' value given to concat: $gnu") } + } + + case $order { + numeric: { $orderflag = "-n" } + alpha: { $orderflag = "" } + default: { fail("Improper 'order' value given to concat: $order") } + } + File{ owner => root, group => root, @@ -158,7 +170,7 @@ define concat($mode = 0644, $owner = "root", $group = "root", $warn = "false", $ subscribe => File[$fragdir], alias => "concat_${fragdir}", require => [ File["/usr/local/bin/concatfragments.sh"], File[$fragdir], File["${fragdir}/fragments"], File["${fragdir}/fragments.concat"] ], - unless => "/usr/local/bin/concatfragments.sh -o ${fragdir}/${concat_name} -d ${fragdir} -t ${warnflag} ${forceflag}", - command => "/usr/local/bin/concatfragments.sh -o ${fragdir}/${concat_name} -d ${fragdir} ${warnflag} ${forceflag}", + unless => "/usr/local/bin/concatfragments.sh -o ${fragdir}/${concat_name} -d ${fragdir} -t ${warnflag} ${forceflag} ${orderflag} ${gnuflag}", + command => "/usr/local/bin/concatfragments.sh -o ${fragdir}/${concat_name} -d ${fragdir} ${warnflag} ${forceflag} ${orderflag} ${gnuflag}", } } |