From ed1db863129a5fb17dcd02c47b8744458fa046e1 Mon Sep 17 00:00:00 2001 From: Julian Blake Kongslie Date: Wed, 25 Nov 2020 10:45:14 -0800 Subject: Add olamic-wait tool for blocking until a task is complete. --- olamic-wait | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 olamic-wait (limited to 'olamic-wait') diff --git a/olamic-wait b/olamic-wait new file mode 100755 index 0000000..557c80a --- /dev/null +++ b/olamic-wait @@ -0,0 +1,27 @@ +#!/bin/bash + +set -eu + +QUEUE_DIR="$1"; shift + +WAIT_UUID="" +while true; do + WAITING=false + for UUID in "$@"; do + if [[ -e "$QUEUE_DIR"/candidates/"$UUID" || -e "$QUEUE_DIR"/in-progress/"$UUID" ]]; then + WAITING=true + if [[ "$WAIT_UUID" != "$UUID" ]]; then + WAIT_UUID="$UUID" + echo "$(date -Iseconds) Waiting for: $UUID" + fi + break + else + echo "$(date -Iseconds) Complete: $UUID" + shift + fi + done + if ! $WAITING; then + break + fi + sleep 1 +done -- cgit v1.2.3