add a define to handily add parts to a concatenated file
git-svn-id: http://club.black.co.at:82/svn/manifests/trunk@64 f03ff2f1-f02d-0410-970d-b9634babeaa1
This commit is contained in:
parent
1f3cd8ebea
commit
0a217790e0
1 changed files with 25 additions and 1 deletions
|
@ -4,11 +4,19 @@
|
|||
# Copyright (C) 2007 David Schmitt <david@schmitt.edv-bus.at>
|
||||
# See LICENSE for the full license granted to you.
|
||||
|
||||
# TODO:
|
||||
# * get rid of the $dir parameter
|
||||
# * create the directory in _part too
|
||||
|
||||
# Usage:
|
||||
# concatenated_file { "/etc/some.conf":
|
||||
# dir => "/etc/some.conf.d",
|
||||
# }
|
||||
define concatenated_file ( $dir, $mode = 0644, $owner = root, $group = root ) {
|
||||
# Use Exec["concat_$name"] as Semaphor
|
||||
define concatenated_file (
|
||||
$dir, $mode = 0644, $owner = root, $group = root
|
||||
)
|
||||
{
|
||||
file {
|
||||
$dir:
|
||||
ensure => directory, checksum => mtime,
|
||||
|
@ -21,7 +29,23 @@ define concatenated_file ( $dir, $mode = 0644, $owner = root, $group = root ) {
|
|||
exec { "find ${dir} -maxdepth 1 -type f ! -name '*puppettmp' -print0 | sort -z | xargs -0 cat > ${name}":
|
||||
refreshonly => true,
|
||||
subscribe => File[$dir],
|
||||
alias => "concat_${name}",
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Add a snippet called $name to the concatenated_file at $dir.
|
||||
# The file can be referenced as File["cf_part_${name}"]
|
||||
define concatenated_file_part (
|
||||
$dir, $content = '', $ensure = present,
|
||||
$mode = 0644, $owner = root, $group = root
|
||||
)
|
||||
{
|
||||
|
||||
file { "${dir}/${name}":
|
||||
ensure => $ensure, content => $content,
|
||||
mode => $mode, owner => $owner, group => $group,
|
||||
alias => "cf_part_${name}",
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue