From af63a0b3eb0a528e39992e1f10c07d8a78a84e77 Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Mon, 4 Oct 2010 23:02:32 +0200 Subject: 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 --- files/concatfragments.sh | 10 +++++----- manifests/fragment.pp | 0 manifests/init.pp | 13 ++++++++++--- manifests/setup.pp | 0 4 files changed, 15 insertions(+), 8 deletions(-) mode change 100755 => 100644 files/concatfragments.sh mode change 100755 => 100644 manifests/fragment.pp mode change 100755 => 100644 manifests/init.pp mode change 100755 => 100644 manifests/setup.pp diff --git a/files/concatfragments.sh b/files/concatfragments.sh old mode 100755 new mode 100644 index 570853e..b486047 --- a/files/concatfragments.sh +++ b/files/concatfragments.sh @@ -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 diff --git a/manifests/fragment.pp b/manifests/fragment.pp old mode 100755 new mode 100644 diff --git a/manifests/init.pp b/manifests/init.pp old mode 100755 new mode 100644 index 41a65ba..b94411c --- a/manifests/init.pp +++ b/manifests/init.pp @@ -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 { diff --git a/manifests/setup.pp b/manifests/setup.pp old mode 100755 new mode 100644 -- cgit v1.2.3