Parametrize warning message

The concat warn parameter can now be any string (and needs to include
the appropriate commenting character) and will then override the default
(which still gets printed when warn=>true).

Signed-off-by: martin f. krafft <madduck@madduck.net>
This commit is contained in:
martin f. krafft 2010-10-04 23:02:32 +02:00 committed by R.I.Pienaar
parent 2a3abe58a6
commit af63a0b3eb
4 changed files with 15 additions and 8 deletions

10
files/concatfragments.sh Executable file → Normal file
View file

@ -47,12 +47,12 @@ SORTARG="-z"
PATH=/sbin:/usr/sbin:/bin:/usr/bin
while getopts "o:s:d:tnwf" options; do
while getopts "o:s:d:tnw:f" options; do
case $options in
o ) OUTFILE=$OPTARG;;
d ) WORKDIR=$OPTARG;;
n ) SORTARG="-zn";;
w ) WARN="true";;
w ) WARNMSG="$OPTARG";;
f ) FORCE="true";;
t ) TEST="true";;
* ) echo "Specify output file with -o and fragments directory with -d"
@ -101,10 +101,10 @@ fi
cd ${WORKDIR}
if [ x${WARN} = "x" ]; then
cat /dev/null > "fragments.concat"
if [ x${WARNMSG} = "x" ]; then
: > "fragments.concat"
else
echo '# This file is managed by Puppet. DO NOT EDIT.' > "fragments.concat"
echo -e "$WARNMSG" > "fragments.concat"
fi
# find all the files in the fragments directory, sort them numerically and concat to fragments.concat in the working dir

0
manifests/fragment.pp Executable file → Normal file
View file

13
manifests/init.pp Executable file → Normal file
View file

@ -93,11 +93,18 @@ define concat($mode = 0644, $owner = "root", $group = "root", $warn = "false", $
$version = $concat::setup::majorversion
$fragdir = "${concatdir}/${safe_name}"
$concat_name = "fragments.concat.out"
$default_warn_message = '# This file is managed by Puppet. DO NOT EDIT.'
case $warn {
'true',true,yes,on: { $warnflag = "-w" }
'false',false,no,off: { $warnflag = "" }
default: { fail("Improper 'warn' value given to concat: $warn") }
'true',true,yes,on: { $warnmsg = "$default_warn_message" }
'false',false,no,off: { $warnmsg = "" }
default: { $warnmsg = "$warn" }
}
$warnmsg_escaped = regsubst($warnmsg, "'", "'\\\\''", 'G')
$warnflag = $warnmsg_escaped ? {
'' => '',
default => "-w '$warnmsg_escaped'"
}
case $force {

0
manifests/setup.pp Executable file → Normal file
View file