Skip to content

openstack_test: trust OTE resolver exits; isolate serial coda from LB - #46

Open
tusharjadhav3302 wants to merge 1 commit into
mainfrom
fix/openstack-test-ote-batch-trust-resolver
Open

tusharjadhav3302 wants to merge 1 commit into
mainfrom
fix/openstack-test-ote-batch-trust-resolver

Conversation

@tusharjadhav3302

@tusharjadhav3302 tusharjadhav3302 commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Trust ote_resolve_results.py for OTE batch, LB serial, and serial-coda suite exit (ignore false non-zero run-test rc / Deserializaion Error / Error: N when resolved failed=0).
  • Fail when filtered list is empty (expected=0) or resolve is incomplete (resolvable!=expected / unknown>0); mark UNSTABLE for failed, unknown, or incomplete so those paths cannot silently pass.
  • Disable Machine leak-cluster serial coda on lb_tests OVN/amphora stages (coda stays on main openstack_test only) to avoid LB allowlist matcher-uniqueness false POST_FAILURE.
  • Publish serial coda under artifacts/openstack_test_serial_coda/ and test_results/openstack_tests_serial_coda/; always post batch (and coda) results when junit exists so Zuul still gets HTML/XML if a later step fails.

Test plan

  • LB stages (lb_ovn / amphora): no serial-coda splitter / matcher-uniqueness false fail; suite green when resolver failed=0
  • Main openstack_test: batch trust-resolver; false OTE rc alone does not UNSTABLE
  • Empty filtered list fails; incomplete resolve (resolvable!=expected) marks UNSTABLE (not silent green)
  • Serial coda artifacts: openstack_test_serial_coda/ + test_results/openstack_tests_serial_coda/ with XML/HTML
  • Batch openstack-test-results/ / test_results/openstack/ still published when junit exists even if coda fails later
  • Real resolver failed>0 still UNSTABLE + must-gather; junit rewrite failure still fails the suite

@openshift-ci

openshift-ci Bot commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign chenwng for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

resolvable=$(( ${passed_count:-0} + ${skipped_count:-0} + ${failed_count:-0} ))
if [ "$run_exit" -ne 0 ] && [ "${failed_count:-0}" -eq 0 ]; then
echo "ote batch run_exit=$run_exit ignored; resolved passed=${passed_count:-0} failed=0 skipped=${skipped_count:-0} unknown=${unknown_count:-0} expected=$expected"
fi

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When filtering produces an empty test list, run-test returns non-zero because it received no test names. Here expected, resolvable, and all outcome counts are 0, so this condition lets the task succeed without running tests. Could you fail explicitly when expected is zero?

@tusharjadhav3302 tusharjadhav3302 Sep 29, 2026 •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The batch path now fails explicitly when expected is 0 (ote batch: empty filtered test list (expected=0); failing), so an empty filtered list can no longer pass via resolvable == expected == 0.

Applied the same guard on the serial filtered path for consistency (ote serial: empty filtered test list (expected=0); failing).

@tusharjadhav3302 tusharjadhav3302 changed the title openstack_test: trust resolver for OTE stdin-batch exit openstack_test: OTE batch trust-resolver and disable serial coda on LB stages Sep 29, 2026
OTE run-test often exits non-zero with Deserializaion Error / Error:N
even when nested outcomes are pass/skip. Gate batch, LB serial, and
serial-coda suite results on ote_resolve_results.py counts (and fail
empty or incomplete resolve), not process rc alone. Disable Machine
leak-cluster serial coda on lb_tests OVN/amphora allowlists so uniqueness
does not false-fail. Publish coda under openstack_test_serial_coda/ and
always post batch/coda HTML/XML when junit exists; mark UNSTABLE on
failed, unknown, or resolvable!=expected.

Co-authored-by: Cursor <cursoragent@cursor.com>
@tusharjadhav3302
tusharjadhav3302 force-pushed the fix/openstack-test-ote-batch-trust-resolver branch from 6f7679c to 9ba59bf Compare September 29, 2026 18:57
@tusharjadhav3302 tusharjadhav3302 changed the title openstack_test: OTE batch trust-resolver and disable serial coda on LB stages openstack_test: trust OTE resolver exits; isolate serial coda from LB Sep 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants