support a header file

git-svn-id: http://club.black.co.at:82/svn/manifests/trunk@173 f03ff2f1-f02d-0410-970d-b9634babeaa1
This commit is contained in:
david 2007-08-06 10:14:15 +00:00
parent f7c440572b
commit c85903a0b3

View file

@ -14,7 +14,11 @@
# }
# Use Exec["concat_$name"] as Semaphor
define concatenated_file (
$dir, $mode = 0644, $owner = root, $group = root
# where the snippets are located
$dir,
# a file with content to prepend
$header = '',
$mode = 0644, $owner = root, $group = root
)
{
file {
@ -29,8 +33,11 @@ define concatenated_file (
mode => $mode, owner => $owner, group => $group;
}
# if there is a header file, prepend it
$header_cmd = $header? { '' => '', default => "| cat ${header} - " }
# use >| to force clobbering the target file
exec { "/usr/bin/find ${dir} -maxdepth 1 -type f ! -name '*puppettmp' -print0 | sort -z | xargs -0 cat >| ${name}":
exec { "/usr/bin/find ${dir} -maxdepth 1 -type f ! -name '*puppettmp' -print0 | sort -z | xargs -0 cat ${header_cmd} >| ${name}.puppettmp":
refreshonly => true,
subscribe => File[$dir],
before => File[$name],