# ATVM Status Template Use this as the default ATVM automation run-status template for: - local status responses in the terminal - Mattermost status posts after a completed run ## Layout ```md ## ATVM Run Status ### **COVERAGE:** - template: `` - datastore/config family: `` - migration style: `` - integration/plugin path: `` - scope of this run: `` **TEST FLOW:** - **SUMMARY:** | Metric | Value | |---|---:| | finished | | | passed | | | failed | | | skipped | | **HOSTS:** | Host | Kernel | Status | Detail | |---|---|---|---| | | | ✅ PASS | completed | | | | ⚠️ FAIL | | | | | ⏳ RUN | in progress | | | | ⏭️ SKIP | | **TIMING:** | Metric | Value | |---|---| | start | | | end | | | total | | | quickest | - or n/a | | longest | - or n/a | | average | or n/a | **NOTES:** - - ``` ## Rules - Keep `COVERAGE:`, `TEST FLOW:`, `SUMMARY:`, `HOSTS:`, `TIMING:`, and `NOTES:` in that order. - Use the title format: - `## ATVM Run Status` - `### ` - Use flat bullet lists for `COVERAGE:` and `TEST FLOW:`. - Use Markdown tables for `SUMMARY:`, `HOSTS:`, and `TIMING:`. - Use one host per row in the `HOSTS:` section. - Include a `Kernel` column immediately after `Host` in the `HOSTS:` table. - For completed hosts, prefer: - `✅ PASS` - `⚠️ FAIL` - For in-progress or skipped hosts, use: - `⏳ RUN` - `⏭️ SKIP` - Keep `Detail` concise. - Put broader context under `NOTES:`, not in the host table. - `COVERAGE:` should describe what the run was intended to cover without listing target hosts. - `TEST FLOW:` should describe the template-specific numbered run flow once for the whole test, not per host. - The watcher resolves `TEST FLOW:` from the run template name. - `cmc-e2e` currently uses this flow: - `1. Verifying set up` - `2. Power on and obtain ip address and host name` - `3. Uninstall CMC if still exists` - `4. Setting up disk` - `5. Copy CMC install command from GUI` - `6. Install CMC` - `7. Create migration session` - `8. Tracking Changes` - `9. Trigger cmotion and do I/O test before actual cutover` - `10. Verify migration remains healthy during I/O activity` - `11. Prepare for cutover` - `12. Stop application / stop test I/O` - `13. Run final sync` - `14. Confirm destination is fully up to date` - `15. Perform cutover` - `16. Validate destination host / disk state` - `17. Run post-cutover checks` - `18. Power off` - See `/home/aw/code/cds/atvm/docs/automation/examples.md` for `cmc-e2e` examples. - Resolve kernel values by cross-referencing hostnames against `/home/aw/code/cds/atvm/inventory/vm-inventory.md`. - If no kernel value can be verified from `vm-inventory.md`, use `unknown`. - Use the same template for Mattermost and local operator-visible status output.