feat(web): keep unattended watcher alive at empty queue
This commit is contained in:
@@ -9,6 +9,7 @@ SCHEDULER_PUSH_RETRIES="${WBV2_PUSH_RETRIES:-6}"
|
||||
WATCHDOG_INTERVAL="${WBV2_WATCHDOG_INTERVAL:-10}"
|
||||
WATCHDOG_RESTART_DELAY="${WBV2_WATCHDOG_RESTART_DELAY:-5}"
|
||||
AUTO_AUTHORIZE="${WBV2_AUTO_AUTHORIZE:-1}"
|
||||
WAIT_ON_EMPTY="${WBV2_WAIT_ON_EMPTY:-1}"
|
||||
|
||||
# Keep repository evidence on disk while placing compiler/transient caches in
|
||||
# RAM. Eight compile jobs is the repository's stability limit.
|
||||
@@ -46,9 +47,13 @@ start_scheduler() {
|
||||
start_watchdog() {
|
||||
local pid_file="$CONTROL_DIR/my-tools-watchdog.pid"
|
||||
local auto_authorize_args=()
|
||||
local wait_on_empty_args=()
|
||||
if test "$AUTO_AUTHORIZE" != "0"; then
|
||||
auto_authorize_args+=(--auto-authorize)
|
||||
fi
|
||||
if test "$WAIT_ON_EMPTY" != "0"; then
|
||||
wait_on_empty_args+=(--wait-on-empty)
|
||||
fi
|
||||
if test -f "$pid_file"; then
|
||||
local watchdog_pid
|
||||
watchdog_pid="$(tr -d '[:space:]' < "$pid_file")"
|
||||
@@ -64,6 +69,7 @@ start_watchdog() {
|
||||
--max-iterations "$SCHEDULER_MAX_ITERATIONS" \
|
||||
--push-retries "$SCHEDULER_PUSH_RETRIES" \
|
||||
"${auto_authorize_args[@]}" \
|
||||
"${wait_on_empty_args[@]}" \
|
||||
--commit --push \
|
||||
> "$CONTROL_DIR/my-tools-watchdog.stdout.log" 2>&1 < /dev/null &
|
||||
printf 'watchdog launch pid: %s\n' "$!"
|
||||
|
||||
Reference in New Issue
Block a user