Improve ATVM failed-host detail recovery
This commit is contained in:
@@ -76,6 +76,12 @@ Run ATVM CMC automation tests on the designated automation VM without unintended
|
||||
- `mochawesome/`
|
||||
- per-run HTML reports
|
||||
- When a machine fails, use the matching `logs/` entry first to capture the detailed failure context for that host.
|
||||
- Apply the failed-host detail recovery path to every ATVM template type, not just reboot.
|
||||
- For any failed host, recover detail in this order when available:
|
||||
- consolidated run log
|
||||
- matching `mochawesome` HTML
|
||||
- structured reporter artifacts such as per-host JSON or XML
|
||||
- text reporter artifacts
|
||||
- When reconstructing historical status, prefer `cmcReporter` artifacts over less-specific runner output because they preserve per-host results after the live run has ended.
|
||||
- Do not treat the existence of a per-host reporter artifact by itself as proof that the host passed.
|
||||
- For categorized grouped recovery, prefer the matching per-host reporter JSON or mochawesome result and carry through the real `failures`, `pending`, and failure message instead of assuming `PASS completed`.
|
||||
@@ -269,6 +275,8 @@ Status-report expectations:
|
||||
- Do not include generic watcher bookkeeping messages in `NOTES:` such as artifact-detection confirmations.
|
||||
- Do not include internal watcher fallback notes in `NOTES:` such as `check-xml-files.ts` validation confirmations or reporter-artifact recovery details.
|
||||
- The `HOSTS:` table includes `Host`, `Kernel`, `Status`, and `Detail` columns in that order.
|
||||
- For any failed host, keep the `Detail` column compact by showing the failing step plus a short error summary, not the full raw stack trace.
|
||||
- If richer failure text is available, put the longer trimmed excerpt in `NOTES:` so the result stays readable in Mattermost and local status output.
|
||||
- In `COVERAGE:`, describe the important `cmc-templates.py` command inputs such as template, categorize mode, datastore/config family, config filename, migration style, any real plugin/integration path, and other operator-relevant run options, but do not list target hosts there or include verbose prose scope descriptions.
|
||||
- Only include coverage fields that the template command actually used. Do not show empty or irrelevant fields such as an integration/plugin path for templates that did not use one.
|
||||
- If `categorize mode: enabled` is already shown in `COVERAGE:`, do not also repeat `--categorize` under `run options`.
|
||||
|
||||
Reference in New Issue
Block a user