]> git.donarmstrong.com Git - wannabuild.git/blobdiff - bin/trigger-wrapper
Auto-committed schema changes.
[wannabuild.git] / bin / trigger-wrapper
index 7832f87b900354ac2c8d31e27529bf199bb12a9b..c3772da42f18cbc16e84db2c8f2880511f0d3ee1 100755 (executable)
@@ -2,19 +2,32 @@
 
 [ -n "$SSH_ORIGINAL_COMMAND" ] || exit 1
 
+trigger_name=$(basename "$1")
+
 set -- $SSH_ORIGINAL_COMMAND
 
-bn=$(basename "$1")
-if [ "$bn" = "trigger.daily" ]; then
-       bin=/org/wanna-build/trigger.daily
-elif [ "$bn" = "trigger.often" ]; then
-       bin=/org/wanna-build/trigger.often
-else
-       exit 1
+shift
+args="$*"
+args=${args//[^a-zA-Z-]/}
+args=${args,,}
+
+# Ignore ftpsync stuff.
+if [ "$args" = "syncall" -o "$args" = "sync:all" ]
+then
+    args=""
 fi
 
-shift
+echo "$(date): $trigger_name | $args" >> /org/wanna-build/db/signal.log
+
+if [ ! -z "$args" ]
+then
+    # 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"
+fi
 
-[ -f "$bin" -a -x "$bin" ] || exit 1
+exit 0
 
-exec $bin