ops(scripts): dispatch, queue gating, heartbeat, quota probe
dispatch-turn.sh (headless turn launcher with TURN_MODEL routing), queue-after.sh (serial gate chain + quota-wall guard), pmo-heartbeat.sh (PMO wake loop), quota-probe-then-chain.sh (post-wall relaunch).
This commit is contained in:
Executable
+22
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
# relaunch-screen.sh <name> <pmo|work> [fuse] — restart an RCEO screen so it
|
||||
# re-reads ~/.screenrc (termcapinfo scroll fix). Fuse >0 schedules via helper
|
||||
# screen (used to restart RCEO-PMO from inside itself). Owner-run; no root.
|
||||
set -euo pipefail
|
||||
name="${1:?screen name}"; role="${2:?pmo|work}"; fuse="${3:-0}"
|
||||
SELF="$HOME/.coordinate/scripts/relaunch-screen.sh"
|
||||
if [ "$fuse" -gt 0 ]; then
|
||||
screen -S RCEO-Relaunch -X quit 2>/dev/null || true
|
||||
screen -dmS RCEO-Relaunch bash -c "sleep $fuse; $SELF $name $role 0"
|
||||
echo "scheduled: $name restart in ${fuse}s"
|
||||
exit 0
|
||||
fi
|
||||
screen -S "$name" -X quit 2>/dev/null || true
|
||||
sleep 2
|
||||
screen -dmS "$name" "$HOME/.coordinate/scripts/pmo-loop.sh" "$role"
|
||||
sleep 5
|
||||
if screen -ls 2>/dev/null | grep -q "\.$name"; then
|
||||
echo "OK: $name relaunched"
|
||||
else
|
||||
echo "FAILED: $name not present after relaunch" >&2; exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user