Critical fixes: trustworthy results, AlmaLinux-correct tests, EL10/perf hardening - #1
Merged
Conversation
Pin the Ansible stdout callback so a non-default ANSIBLE_STDOUT_CALLBACK cannot silently mask failures and report a false pass. Add an HCS_RESULT contract with explicit status precedence over the recap heuristic, so a tolerated ignored task no longer flips a passing step to failed. Catch SIGINT, terminate the child process group, and always write a partial report in a finally block. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
/tmp is frequently tmpfs or cleared on reboot, risking OOM and loss of certification evidence during long Phoronix and burn-in runs. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
containers: install podman (and wget) instead of the absent docker package and fix the swapped install task names; run_test.sh honors CONTAINER_RUNTIME. network: derive LTS/SUT IPs safely and report unsupported on single-host local runs instead of failing. ltp: enable crb or powertools by EL major version. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Execute the check profile and the single-host network test against real AlmaLinux so role-level regressions are caught beyond syntax checks. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
LTP and Phoronix emit thousands of stdout lines; refreshing the Rich progress description per line spikes controller CPU. Cap UI refreshes to ~10 per second while still parsing recap and result markers on every line. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ltp: drop redhat-lsb-core (removed on EL9/10, not needed to build LTP) and cap make parallelism to nproc to avoid OOM on high-core systems. phoronix: run when free space equals the requirement, not only when it exceeds it. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implements the CRITICAL.md triage (C1–C8) plus the highest-value EL10/perf
bugs from the audit (P1–P4). Scoped to defects that produce wrong evidence,
lose evidence, or break the documented
-c localdefault run.Critical (C1–C8)
ANSIBLE_STDOUT_CALLBACK=default, no color) so a non-default callback can't silently mask failures and report a falsepassed.HCS_RESULTcontract with explicit status precedence over the recap heuristic — a toleratedignoredtask no longer flips a passing step to failed.finally./tmp→/var/tmp(tmpfs/reboot loses evidence on long runs).containers: installpodman(+wget) instead of the absentdockerpackage; fix swapped task names;run_test.shhonorsCONTAINER_RUNTIME.network: derive LTS/SUT IPs safely and reportunsupportedon single-host local runs instead of erroring on an undefinedSSH_CONNECTION.ltp: enablecrb/powertoolsby EL major version.--profile check(assertspassed) and single-host--test network(assertsunsupported) — catches role-level regressions beyond syntax checks.Hardening (P1–P4)
redhat-lsb-corefrom LTP (removed on EL9/10, not needed to build).make -j$(nproc)to avoid OOM on high-core hosts.Testing
/var/tmpdefault,derive_statusprecedence,HCS_RESULTparsing, graceful-stop report, UI throttle).hcscompiles; live dry-run verified.Caveats
ansible-playbookwasn't available locally, so the role/shell edits (C1/C2/C5/P1–P3) are validated by syntax + review. The new C8 job exercisescheck+networkon real AlmaLinux 9/10. Functionalcontainers/ltpruns aren't in CI (nested-container privilege + long compiles) and still rest on review until run on a real SUT.Test plan
python -m hcs run --preset certification --inventory 127.0.0.1, -c local— containers/ltp/network behave as described