Fix ATVM watcher service restart after failed units

This commit is contained in:
Anthony Wen
2026-08-03 22:50:04 -04:00
parent 556cce9408
commit 4d1be35ed5
4 changed files with 10 additions and 0 deletions
+1
View File
@@ -181,6 +181,7 @@ Runner cancel example:
- The watcher uses the same ATVM status layout documented in `atvm/docs/automation/status-template.md`.
- Prefer the controller-local `atvm-runner@...` service over ad hoc `nohup` or detached SSH launch patterns for `run-sorry-cypress.py`.
- Prefer `start-atvm-run.sh` when launching both services together because it prevents the watcher/runner log-path race by enforcing watcher-first ordering.
- The start helpers clear stale failed systemd state with `systemctl reset-failed` before starting per-build watcher/runner units.
- Kernel values are resolved from `atvm/inventory/vm-inventory.md`.
- Categorized execution is treated as sequential grouped ATVM sub-runs, not as one parent run with internal phases.
- In categorized mode, the watcher writes per-subrun state under `subruns/` and posts each completed grouped run separately.
@@ -63,6 +63,7 @@ fi
RUN_DIR="${STATE_ROOT}/${BUILD_NAME}"
RUN_LOG="/tmp/${BUILD_NAME}.log"
systemctl stop "atvm-run-watcher@${BUILD_NAME}.service" >/dev/null 2>&1 || true
systemctl reset-failed "atvm-run-watcher@${BUILD_NAME}.service" >/dev/null 2>&1 || true
rm -rf "$RUN_DIR"
rm -f "$RUN_LOG"
mkdir -p "$RUN_DIR"
@@ -59,5 +59,6 @@ ATVM_RUNNER_LOG=${RUNNER_LOG@Q}
EOF
systemctl stop "atvm-runner@${BUILD_NAME}.service" >/dev/null 2>&1 || true
systemctl reset-failed "atvm-runner@${BUILD_NAME}.service" >/dev/null 2>&1 || true
systemctl start "atvm-runner@${BUILD_NAME}.service"
systemctl status --no-pager "atvm-runner@${BUILD_NAME}.service" || true