test: add container-based acceptance test infrastructure#669
test: add container-based acceptance test infrastructure#669trevor-vaughan wants to merge 2 commits into
Conversation
✅ CRAP Load Analysis: PASSSummary
Quadrant Distribution
Regressions
Improvements
New Functions
|
4807973 to
9573e68
Compare
297c1b3 to
44e11ed
Compare
44e11ed to
0e70c8e
Compare
marcusburghardt
left a comment
There was a problem hiding this comment.
PR Review: #669 — test: add container-based acceptance test infrastructure
Solid acceptance test infrastructure with clean compose orchestration (zot + oras seed + SUT). Two well-structured tests cover the lifecycle and OSCAL format interop paths. One blocking issue with exit code propagation in the Makefile target.
Alignment
- PR uses
Refs: #653(partial coverage acknowledged). Missing coverage forinit,list,--show-passing, error exit codes, SARIF/Markdown formats — expected as follow-up work. - Several unrelated changes included (
.DEFAULT_GOAL,.jscpd.json,.mega-linter.ymlzizmor config,generation_state.goerror wrapping). Per Constitution III, unrelated changes should be in separate commits.
This review was generated by /review-pr (AI-assisted).
0e70c8e to
0561120
Compare
0561120 to
3940b39
Compare
3940b39 to
c3b7540
Compare
hbraswelrh
left a comment
There was a problem hiding this comment.
This PR looks good. I left two comments regarding the Gemara aritfacts in the testdata. I'd be happy to open a PR to fix the files.
|
@trevor-vaughan , same case from #663 where multiple PRs change the same file. So when the first is merged the others are automatically blocked with a conflict that requires manual intervention. This can happen, but it would be great if we can limit the scope of PRs to specific changes. This way, a simple rebase should unblock all PRs to be merged once approved. |
I make the changes necessary to get the tests to pass. Unfortunately, this wasn't set correctly the first time so I got caught in the tailwind with changes that were already in-flight. I also happened to mis-type this one 😮💨 . The PR would have needed to be rebased anyway. |
4a6ef52 to
04dba4e
Compare
I understood the intention. But it is also fine to just open a tiny PR fixing the file and mentioning it in other PRs so reviewers can quickly see the dependency relationship and we can merge the related PRs with rebases. The #663 has the necessary approvals but is blocked by the same reason. |
04dba4e to
6307de8
Compare
6307de8 to
82fe056
Compare
Add acceptance tests that validate the full complyctl lifecycle (init, get, scan, export) against a real OCI registry (zot) using podman-compose/docker-compose orchestration. Infrastructure: - Zot OCI registry container with Gemara test policy artifacts - Seed container that pushes catalog + policy to the registry via oras - SUT (system under test) container running complyctl against the registry - Compose orchestration with lifecycle profile and health checks Test coverage: - Registry connectivity and policy pull (complyctl get) - Workspace initialization (complyctl init) - Policy scanning with test provider (complyctl scan) - Report generation in multiple formats (complyctl scan --format) - Doctor diagnostics (complyctl doctor) Build integration: - make test-acceptance / make test-acceptance-clean targets - CI workflow (.github/workflows/acceptance_test.yml) - AGENTS.md and CHANGELOG.md updated Refs: #653 Assisted-by: Claude Opus 4.6 Signed-off-by: Trevor Vaughan <tvaughan@redhat.com>
Signed-off-by: Hannah Braswell <hbraswel@redhat.com> Signed-off-by: Trevor Vaughan <tvaughan@redhat.com>
82fe056 to
d1fb016
Compare
Add acceptance tests that validate the full complyctl lifecycle (init,
get, scan, export) against a real OCI registry (zot) using
podman-compose/docker-compose orchestration.
Infrastructure:
Test coverage:
Build integration:
Refs: #653
Assisted-by: Claude Opus 4.6
Signed-off-by: Trevor Vaughan tvaughan@redhat.com