diff options
| author | Sadeep Madurange <sadeep@asciimx.com> | 2026-08-02 20:12:19 +0800 |
|---|---|---|
| committer | Sadeep Madurange <sadeep@asciimx.com> | 2026-08-02 20:30:36 +0800 |
| commit | 3ffc33b8fe0d52397698f81dbc3086e398d40b43 (patch) | |
| tree | 5070d79233c02ff35408c56ff218c1ea69600c95 /consumer.sh | |
| parent | 11be4af08f8362fe0befd0ec700789c3b830e20f (diff) | |
| download | lex-3ffc33b8fe0d52397698f81dbc3086e398d40b43.tar.gz | |
Fix consumer missing first message.
Diffstat (limited to 'consumer.sh')
| -rwxr-xr-x | consumer.sh | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/consumer.sh b/consumer.sh index 975f103..4ee3d0c 100755 --- a/consumer.sh +++ b/consumer.sh @@ -2,17 +2,22 @@ REMOTE_HOST="${QUEUE_REMOTE_HOST:-lex-queue}" REMOTE_FIFO="${QUEUE_REMOTE_FIFO:-/tmp/job_queue}" -TARGET_DIR="${QUEUE_TARGET_DIR:-/home/lex}" +TARGET_DIR="${QUEUE_TARGET_DIR:-/home/sadeep/lex}" # Ensure the FIFO exists -ssh "$REMOTE_HOST" "test -p \"$REMOTE_FIFO\" || mkfifo -m 0600 \"$REMOTE_FIFO\"" || { - echo "[$(date '+%H:%M:%S')] ERROR: Failed to reach remote host or create FIFO" >&2 +ssh -n "$REMOTE_HOST" " + fuser -k \"$REMOTE_FIFO\" 2>/dev/null + test -p \"$REMOTE_FIFO\" || mkfifo -m 0600 \"$REMOTE_FIFO\" +" || { + echo "[$(date '+%H:%M:%S')] ERROR: Failed to reach remote host or prepare FIFO" >&2 exit 1 } echo "[$(date '+%H:%M:%S')] Listening to remote FIFO '$REMOTE_FIFO' on $REMOTE_HOST..." -ssh "$REMOTE_HOST" "exec 3<> \"$REMOTE_FIFO\"; cat <&3" | while read -r msg; do +while true; do + msg=$(ssh -n "$REMOTE_HOST" "head -n 1 \"$REMOTE_FIFO\"") + [ -z "$msg" ] && continue # Log formatted line capped at 72 chars |
