Prevent ATVM watcher and runner log race
This commit is contained in:
@@ -31,6 +31,8 @@ The watcher does not run indefinitely. It is designed for one run per service in
|
||||
- helper to write per-run runner environment data and start a runner instance
|
||||
- `cancel-atvm-runner.sh`
|
||||
- helper to stop a runner instance
|
||||
- `start-atvm-run.sh`
|
||||
- wrapper that starts watcher first, waits for it to be active, then starts the runner
|
||||
- `start-atvm-run-watcher.sh`
|
||||
- helper to write per-run environment data and start a watcher instance
|
||||
- `cancel-atvm-run-watcher.sh`
|
||||
@@ -127,6 +129,21 @@ These helpers write per-run environment files and start the matching instances:
|
||||
--runner-command "python3 ./run-sorry-cypress.py --config_file cypress.atvm-config-gold.ts --build_name e2e-redhat9.6-ubuntu24.04-w2k25-fc --categorize"
|
||||
```
|
||||
|
||||
Preferred one-shot wrapper:
|
||||
|
||||
```bash
|
||||
./start-atvm-run.sh \
|
||||
--build-name e2e-redhat9.6-ubuntu24.04-w2k25-fc \
|
||||
--template cmc-e2e \
|
||||
--template-command "python3 ./cmc-templates.py --template_name cmc-e2e --config_file cypress.atvm-config-gold.ts" \
|
||||
--runner-command "python3 ./run-sorry-cypress.py --config_file cypress.atvm-config-gold.ts --build_name e2e-redhat9.6-ubuntu24.04-w2k25-fc --categorize" \
|
||||
--config-family gold \
|
||||
--config-file cypress.atvm-config-gold.ts \
|
||||
--migration-style "ATVM end-to-end migration validation" \
|
||||
--integration-plugin "pure with fc" \
|
||||
--categorize
|
||||
```
|
||||
|
||||
That results in:
|
||||
|
||||
- state dir:
|
||||
@@ -159,6 +176,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.
|
||||
- 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.
|
||||
|
||||
Reference in New Issue
Block a user