From ed783ebaa72b86c9acacc93e42cc7e445c2e0d5f Mon Sep 17 00:00:00 2001 From: Andreas Barth Date: Sat, 30 Apr 2011 21:31:48 +0000 Subject: [PATCH] commit uncommited changes --- bin/process-triggers | 16 ++++------------ bin/trigger-wrapper | 17 +++++++++++++---- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/bin/process-triggers b/bin/process-triggers index 7bae80e..fdaf177 100755 --- a/bin/process-triggers +++ b/bin/process-triggers @@ -24,21 +24,13 @@ while [ $work -eq 1 ] do # No further runs unless at least one signal is found. work=0 - find /org/wanna-build/signals -type f | while read signal + find /org/wanna-build/signals -type f | while read signal_file do # Process it. work=1 - if [ "$(stat -c '%s' $signal)" -eq 0 ] - then - /org/wanna-build/triggers/trigger.$(basename $signal) - else - cat $signal | \ - (while read args - do - /org/wanna-build/triggers/trigger.$(basename $signal) $args - done) - fi - rm $signal + signal=$(basename $signal_file) + /org/wanna-build/triggers/trigger.${signal/.?*} ${signal/?*./} + rm $signal_file done done diff --git a/bin/trigger-wrapper b/bin/trigger-wrapper index 5208c22..c3772da 100755 --- a/bin/trigger-wrapper +++ b/bin/trigger-wrapper @@ -8,16 +8,25 @@ set -- $SSH_ORIGINAL_COMMAND shift args="$*" +args=${args//[^a-zA-Z-]/} +args=${args,,} + +# Ignore ftpsync stuff. +if [ "$args" = "syncall" -o "$args" = "sync:all" ] +then + args="" +fi echo "$(date): $trigger_name | $args" >> /org/wanna-build/db/signal.log if [ ! -z "$args" ] then - # Append because we might get triggered for multiple suites. - # (This is mainly for security currently.) - echo $args >> /org/wanna-build/signals/$trigger_name + # Pass arguments in the filename because we might get triggered for + # multiple suites. A simple append wouldn't be race-free on the + # reader side. + touch "/org/wanna-build/signals/${trigger_name}.${args}" else - touch /org/wanna-build/signals/$trigger_name + touch "/org/wanna-build/signals/$trigger_name" fi exit 0 -- 2.39.2