Skip to content

NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests#8739

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
bryan-cox:sippy-cr-test-annotations
Jun 16, 2026
Merged

NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests#8739
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
bryan-cox:sippy-cr-test-annotations

Conversation

@bryan-cox

@bryan-cox bryan-cox commented Jun 15, 2026

Copy link
Copy Markdown
Member

What this PR does / why we need it:

Adds [Jira:Hypershift] and [Feature:XYZ] annotations to all 22 v2 e2e test files for Sippy Component Readiness (CR) mapping. These annotations enable automatic Jira component assignment and per-feature regression tracking in CR dashboards.

The e2e-azure-v2-self-managed job was promoted to standard tier in CR via sippy#3613, but without these annotations tests won't be mapped to Jira components or features. Test names must be annotated before Sippy imports them — renaming after import loses historical data.

Annotation strategy:

  • Single-feature files: both [Jira:Hypershift] and [Feature:XYZ] on the Describe block
  • Multi-feature files (AWS, Azure, Security): [Jira:Hypershift] on the Describe, [Feature:XYZ] on individual Context/When blocks

Which issue(s) this PR fixes:

Special notes for your reviewer:

No logic changes — only string edits to Ginkgo test name strings and documentation updates. Build verified with make e2ev2.

Checklist:

  • Subject and description added to both, commit and PR.
  • Relevant issues have been referenced.
  • This change includes docs.
  • This change includes unit tests.

Summary by CodeRabbit

  • Documentation

    • Added/expanded v2 e2e writing guidelines for Sippy/CR test name annotations, including required [sig-hypershift][Jira:Hypershift] and [Feature:XYZ] formats, placement rules for single- vs multi-feature files, and updated examples.
  • Tests

    • Updated v2 e2e suite and block title strings to consistently include Jira/feature metadata prefixes (while preserving existing suite labels and test behavior).
    • Renamed the v2 E2E suite runner name to "hypershift-e2e".

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci

openshift-ci Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 15, 2026
@openshift-ci-robot openshift-ci-robot added jira/severity-important Referenced Jira bug's severity is important for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Jun 15, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@bryan-cox: This pull request references Jira Issue OCPBUGS-51498, which is invalid:

  • expected the bug to be open, but it isn't
  • expected the vulnerability to target either version "5.0." or "openshift-5.0.", but it targets "4.13.z" instead
  • expected the bug to be in one of the following states: NEW, ASSIGNED, POST, but it is Closed (Not a Bug) instead

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

What this PR does / why we need it:

Adds [Jira:Hypershift] and [Feature:XYZ] annotations to all 22 v2 e2e test files for Sippy Component Readiness (CR) mapping. These annotations enable automatic Jira component assignment and per-feature regression tracking in CR dashboards.

The e2e-azure-v2-self-managed job was promoted to standard tier in CR via sippy#3613, but without these annotations tests won't be mapped to Jira components or features. Test names must be annotated before Sippy imports them — renaming after import loses historical data.

Annotation strategy:

  • Single-feature files: both [Jira:Hypershift] and [Feature:XYZ] on the Describe block
  • Multi-feature files (AWS, Azure, Security): [Jira:Hypershift] on the Describe, [Feature:XYZ] on individual Context/When blocks

Which issue(s) this PR fixes:

Fixes OCPBUGS-51498

Special notes for your reviewer:

No logic changes — only string edits to Ginkgo test name strings and documentation updates. Build verified with make e2ev2.

Checklist:

  • Subject and description added to both, commit and PR.
  • Relevant issues have been referenced.
  • This change includes docs.
  • This change includes unit tests.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@bryan-cox bryan-cox changed the title OCPBUGS-51498: Add Sippy/CR test name annotations to v2 e2e tests Add Sippy/CR test name annotations to v2 e2e tests Jun 15, 2026
@openshift-ci-robot openshift-ci-robot removed jira/severity-important Referenced Jira bug's severity is important for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Jun 15, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@bryan-cox: No Jira issue is referenced in the title of this pull request.
To reference a jira issue, add 'XYZ-NNN:' to the title of this pull request and request another refresh with /jira refresh.

Details

In response to this:

What this PR does / why we need it:

Adds [Jira:Hypershift] and [Feature:XYZ] annotations to all 22 v2 e2e test files for Sippy Component Readiness (CR) mapping. These annotations enable automatic Jira component assignment and per-feature regression tracking in CR dashboards.

The e2e-azure-v2-self-managed job was promoted to standard tier in CR via sippy#3613, but without these annotations tests won't be mapped to Jira components or features. Test names must be annotated before Sippy imports them — renaming after import loses historical data.

Annotation strategy:

  • Single-feature files: both [Jira:Hypershift] and [Feature:XYZ] on the Describe block
  • Multi-feature files (AWS, Azure, Security): [Jira:Hypershift] on the Describe, [Feature:XYZ] on individual Context/When blocks

Which issue(s) this PR fixes:

Fixes OCPBUGS-51498

Special notes for your reviewer:

No logic changes — only string edits to Ginkgo test name strings and documentation updates. Build verified with make e2ev2.

Checklist:

  • Subject and description added to both, commit and PR.
  • Relevant issues have been referenced.
  • This change includes docs.
  • This change includes unit tests.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

The PR establishes and applies Sippy Component Readiness (CR) test name annotation standards across the v2 e2e test suite. The changes add mandatory [sig-hypershift][Jira:Hypershift] prefixes to top-level Ginkgo Describe blocks and feature-specific [Feature:XYZ] annotations at the Describe level for single-feature files or at Context/When levels for multi-feature files. Documentation in AGENTS.md and writing-tests.md is updated to define these requirements with examples. The standards are then applied across 22 e2e test files, and the suite registration name is simplified to "hypershift-e2e". No test logic, assertions, or existing labels are modified.

Possibly related PRs

  • openshift/hypershift#8674: Updates Ginkgo test annotations for the hosted_cluster_external_oidc_test.go suite, part of the same annotation standardization effort.

Suggested reviewers

  • cblecker
  • Nirshal
  • csrwng
🚥 Pre-merge checks | ✅ 11
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed All test names remain stable and deterministic; PR only adds static annotation strings like [sig-hypershift], [Jira:Hypershift], [Feature:XYZ] with no dynamic content.
Test Structure And Quality ✅ Passed This PR adds test name annotations (metadata only) to existing v2 e2e test files and documentation updates. The custom check asks to review Ginkgo test code for quality patterns (single responsibil...
Topology-Aware Scheduling Compatibility ✅ Passed This PR only modifies e2e test annotations and documentation—it contains no deployment manifests, operator code, or controller modifications. The custom check is not applicable as it requires sched...
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR contains annotation-only changes to existing test files; no new test logic, IPv4 assumptions, or external connectivity requirements were introduced.
No-Weak-Crypto ✅ Passed PR contains only test annotation and documentation string updates; no cryptographic code or imports present. Check is not applicable.
Container-Privileges ✅ Passed PR contains no container or Kubernetes manifests with privilege escalation issues. Changes are limited to Go test file label strings and documentation updates.
No-Sensitive-Data-In-Logs ✅ Passed PR contains only string edits to test annotations and documentation. No logging code, passwords, tokens, PII, or sensitive data are exposed in the changes.
Title check ✅ Passed The title 'NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests' accurately describes the main change in the pull request: adding Sippy/CR test name annotations across v2 e2e test files.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci Bot added the area/platform/aws PR/issue for AWS (AWSPlatform) platform label Jun 15, 2026
@openshift-ci

openshift-ci Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bryan-cox

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

The pull request process is described 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

@openshift-ci openshift-ci Bot added area/platform/azure PR/issue for Azure (AzurePlatform) platform approved Indicates a PR has been approved by an approver from all required OWNERS files. area/testing Indicates the PR includes changes for e2e testing and removed do-not-merge/needs-area labels Jun 15, 2026
@bryan-cox bryan-cox force-pushed the sippy-cr-test-annotations branch 2 times, most recently from f797eb6 to 27d9ff9 Compare June 15, 2026 16:58
@bryan-cox bryan-cox marked this pull request as ready for review June 15, 2026 16:58
@openshift-ci openshift-ci Bot added area/documentation Indicates the PR includes changes for documentation and removed do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. labels Jun 15, 2026
@openshift-ci openshift-ci Bot requested review from cblecker and sjenning June 15, 2026 16:59
@codecov

codecov Bot commented Jun 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 41.66%. Comparing base (712ba58) to head (0acd467).
⚠️ Report is 24 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #8739   +/-   ##
=======================================
  Coverage   41.66%   41.66%           
=======================================
  Files         758      758           
  Lines       93929    93929           
=======================================
  Hits        39135    39135           
  Misses      52046    52046           
  Partials     2748     2748           
Flag Coverage Δ
cmd-support 34.96% <ø> (ø)
cpo-hostedcontrolplane 44.00% <ø> (ø)
cpo-other 43.45% <ø> (ø)
hypershift-operator 51.65% <ø> (ø)
other 31.56% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions github-actions Bot temporarily deployed to docs-preview/pr-8739 June 15, 2026 17:04 Inactive
@csrwng

csrwng commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Based on the review of sippy code (CNTRLPLANE-2859), some issues to resolve:

1. Suite name mismatch — blocks ingestion entirely

Sippy only imports test results from suites registered in pkg/db/suites.go. The registered name is "hypershift-e2e", but the v2 suite currently uses "HyperShift End To End Test Suite" (test/e2e/v2/tests/suite_test.go:49). Until this is changed, Sippy will silently skip all v2 results:

// Sippy's prow.go — skips unknown suites
log.Infof("skipping suite %q as it's not listed for import", suite.Name)

This is a one-line fix:

RunSpecs(t, "hypershift-e2e")

Without it, the annotations this PR adds won't be visible to Sippy or Component Readiness.

2. [Jira:Hypershift] is redundant given the suite matcher

ci-test-mapping's HyperShift component already claims all tests in the hypershift-e2e suite via a suite matcher (pkg/components/hypershift/component.go):

Matchers: []config.ComponentMatcher{
    {Suite: "hypershift-e2e"},
    // ...
}

So once the suite name is fixed, every test will auto-map to the HyperShift Jira component without needing [Jira:Hypershift] in the test name. The annotation isn't harmful — it's belt-and-suspenders — but it's worth knowing it's not the mechanism that will actually drive the mapping.

3. [Feature:*] — this is the genuinely useful part

ci-test-mapping's DefaultCapabilities() extracts [Feature:*] values from test names and uses them as capabilities for per-feature regression tracking in Component Readiness. This is the part of the PR that adds real value beyond what the suite matcher provides.

4. Consider adding [sig-hypershift] for IsOpenShiftTest() classification

Sippy's IsOpenShiftTest() regex only recognizes tests containing [sig-*], [bz-*], [Suite:openshift*], or [k8s.io]. Neither [Jira:*] nor [Feature:*] match. Without one of these markers, v2 tests won't count toward the OpenShiftTestsStatus synthetic test in Sippy dashboards. Adding [sig-hypershift] to the Describe blocks would fix this — it could go on the same line as [Jira:Hypershift].

TL;DR

  • Must fix: Change RunSpecs suite name to "hypershift-e2e" — without this, nothing else matters
  • Nice to have: Add [sig-hypershift] for Sippy's OpenShift test classification
  • Keep: The [Feature:*] annotations — they drive capability tracking in CR
  • Optional: [Jira:Hypershift] — harmless but redundant given the suite matcher

Add [Jira:Hypershift] and [Feature:XYZ] annotations to all 22 v2 e2e
test files for Sippy Component Readiness (CR) mapping. These annotations
enable automatic Jira component assignment and per-feature regression
tracking in CR dashboards.

Single-feature files get both annotations on the Describe block.
Multi-feature files (AWS, Azure, Security) get [Jira:Hypershift] on
the Describe and [Feature:XYZ] on individual Context/When blocks.

Update AGENTS.md with the annotation convention as section 19.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@csrwng

csrwng commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

/lgtm

@xueqzhan

Copy link
Copy Markdown
Contributor

Based on the review of sippy code (CNTRLPLANE-2859), some issues to resolve:

1. Suite name mismatch — blocks ingestion entirely

Sippy only imports test results from suites registered in pkg/db/suites.go. The registered name is "hypershift-e2e", but the v2 suite currently uses "HyperShift End To End Test Suite" (test/e2e/v2/tests/suite_test.go:49). Until this is changed, Sippy will silently skip all v2 results:

// Sippy's prow.go — skips unknown suites
log.Infof("skipping suite %q as it's not listed for import", suite.Name)

This is a one-line fix:

RunSpecs(t, "hypershift-e2e")

Without it, the annotations this PR adds won't be visible to Sippy or Component Readiness.

2. [Jira:Hypershift] is redundant given the suite matcher

ci-test-mapping's HyperShift component already claims all tests in the hypershift-e2e suite via a suite matcher (pkg/components/hypershift/component.go):

Matchers: []config.ComponentMatcher{
    {Suite: "hypershift-e2e"},
    // ...
}

So once the suite name is fixed, every test will auto-map to the HyperShift Jira component without needing [Jira:Hypershift] in the test name. The annotation isn't harmful — it's belt-and-suspenders — but it's worth knowing it's not the mechanism that will actually drive the mapping.

3. [Feature:*] — this is the genuinely useful part

ci-test-mapping's DefaultCapabilities() extracts [Feature:*] values from test names and uses them as capabilities for per-feature regression tracking in Component Readiness. This is the part of the PR that adds real value beyond what the suite matcher provides.

4. Consider adding [sig-hypershift] for IsOpenShiftTest() classification

Sippy's IsOpenShiftTest() regex only recognizes tests containing [sig-*], [bz-*], [Suite:openshift*], or [k8s.io]. Neither [Jira:*] nor [Feature:*] match. Without one of these markers, v2 tests won't count toward the OpenShiftTestsStatus synthetic test in Sippy dashboards. Adding [sig-hypershift] to the Describe blocks would fix this — it could go on the same line as [Jira:Hypershift].

TL;DR

  • Must fix: Change RunSpecs suite name to "hypershift-e2e" — without this, nothing else matters
  • Nice to have: Add [sig-hypershift] for Sippy's OpenShift test classification
  • Keep: The [Feature:*] annotations — they drive capability tracking in CR
  • Optional: [Jira:Hypershift] — harmless but redundant given the suite matcher

A few comments for this:

  1. Standardize on the suite name is preferred. It does affect import from classic sippy. But it should not affect component readiness.
  2. [Jira:xxxx] format is the preferred annotation going forward.
  3. I believe IsOpenShiftTest is no longer used by any code. Therefore '[sig-hypershift]' is not really needed.

That said, those annotations should not do any harm.

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jun 15, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aks-4-22
/test e2e-aws-4-22
/test e2e-aks
/test e2e-aws
/test e2e-aws-upgrade-hypershift-operator
/test e2e-azure-v2-self-managed
/test e2e-kubevirt-aws-ovn-reduced
/test e2e-v2-aws
/test e2e-v2-gke

@bryan-cox bryan-cox changed the title Add Sippy/CR test name annotations to v2 e2e tests NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests Jun 15, 2026
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jun 15, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@bryan-cox: This pull request explicitly references no jira issue.

Details

In response to this:

What this PR does / why we need it:

Adds [Jira:Hypershift] and [Feature:XYZ] annotations to all 22 v2 e2e test files for Sippy Component Readiness (CR) mapping. These annotations enable automatic Jira component assignment and per-feature regression tracking in CR dashboards.

The e2e-azure-v2-self-managed job was promoted to standard tier in CR via sippy#3613, but without these annotations tests won't be mapped to Jira components or features. Test names must be annotated before Sippy imports them — renaming after import loses historical data.

Annotation strategy:

  • Single-feature files: both [Jira:Hypershift] and [Feature:XYZ] on the Describe block
  • Multi-feature files (AWS, Azure, Security): [Jira:Hypershift] on the Describe, [Feature:XYZ] on individual Context/When blocks

Which issue(s) this PR fixes:

Special notes for your reviewer:

No logic changes — only string edits to Ginkgo test name strings and documentation updates. Build verified with make e2ev2.

Checklist:

  • Subject and description added to both, commit and PR.
  • Relevant issues have been referenced.
  • This change includes docs.
  • This change includes unit tests.

Summary by CodeRabbit

  • Documentation

  • Added/expanded v2 e2e writing guidelines for Sippy/CR test name annotations, including required [sig-hypershift][Jira:Hypershift] and [Feature:XYZ] formats, placement rules for single- vs multi-feature files, and updated examples.

  • Tests

  • Updated v2 e2e suite and block title strings to consistently include Jira/feature metadata prefixes (while preserving existing suite labels and test behavior).

  • Renamed the v2 E2E suite runner name to "hypershift-e2e".

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@bryan-cox

Copy link
Copy Markdown
Member Author

/verified by presubmit tests

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jun 15, 2026
@openshift-ci-robot

Copy link
Copy Markdown

@bryan-cox: This PR has been marked as verified by presubmit tests.

Details

In response to this:

/verified by presubmit tests

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 21c7aa8 and 2 for PR HEAD 0acd467 in total

@cwbotbot

Copy link
Copy Markdown

Test Results

e2e-aws

e2e-aks

@bryan-cox

Copy link
Copy Markdown
Member Author

/retest

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 44f5195 and 1 for PR HEAD 0acd467 in total

@bryan-cox

Copy link
Copy Markdown
Member Author

/retest

@bryan-cox

Copy link
Copy Markdown
Member Author

/override "ci/prow/e2e-kubevirt-aws-ovn-reduced"

The test is permafailing and not related to this PR.

@openshift-ci

openshift-ci Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

@bryan-cox: Overrode contexts on behalf of bryan-cox: ci/prow/e2e-kubevirt-aws-ovn-reduced

Details

In response to this:

/override "ci/prow/e2e-kubevirt-aws-ovn-reduced"

The test is permafailing and not related to this PR.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@hypershift-jira-solve-ci

Copy link
Copy Markdown

I now have all the evidence I need. Let me compile the final analysis. The root cause chain is:

  1. Router pod (router-default-5b9668df8f-v69p8) failed startup probe with HTTP 500: backend-proxy-http and has-synced health checks failed
  2. Router CrashLooped (9 restarts, exit code 0 — "Completed" but probe killed it)
  3. Ingress operator became Unavailable/Degraded (0/1 replicas available)
  4. OpenShift API server remained PreconditionNotReady (depends on ingress)
  5. Route CRD not registered → monitoring operator failed to create Routes
  6. Authentication operator failed (depends on ingress for OAuth endpoints)
  7. Bootstrap timed out waiting for these operators

This is an infrastructure/CI flake — the management cluster router pod failed its startup health check repeatedly. The PR (#8739) adds Sippy/CR test name annotations to v2 e2e tests and does not touch any cluster installation, ingress, or router code.

Test Failure Analysis Complete

Job Information

  • Prow Job: pull-ci-openshift-hypershift-main-e2e-kubevirt-aws-ovn-reduced
  • Build ID: 2066837327749058560
  • Target: e2e-kubevirt-aws-ovn-reduced
  • Failed Step: ipi-install-install (pre phase — cluster installation)
  • PR: #8739 — NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests

Test Failure Analysis

Error

Bootstrap failed to complete: timed out waiting for the condition.
Failed to wait for bootstrapping to complete. This error usually happens when there
is a problem with control plane hosts that prevents the control plane operators from
creating the control plane.

Cluster operator ingress Available is False: The "default" ingress controller reports
Available=False: DeploymentAvailable=False (MinimumReplicasUnavailable)

Router startup probe failed: HTTP 500
[-]backend-proxy-http failed: reason withheld
[-]has-synced failed: reason withheld
[+]process-running ok
healthz check failed

Summary

The management cluster installation (IPI on AWS) failed because the OpenShift router pod (router-default-5b9668df8f-v69p8) entered CrashLoopBackOff during bootstrap, repeatedly failing its startup probe with HTTP 500 (backend-proxy-http and has-synced checks failed). After 9 restarts and 55 minutes, the bootstrap timed out. This cascaded to the ingress, authentication, openshift-apiserver, and monitoring operators all becoming unavailable, preventing bootstrap completion. All 4 nodes (3 masters + 1 worker) were Ready and all MachineConfigPools were updated — the failure was isolated to the router pod's health checks. This is an infrastructure/CI flake completely unrelated to PR #8739, which only adds test name annotations to e2e test code.

Root Cause

The root cause is the router pod (router-default-5b9668df8f-v69p8 in openshift-ingress namespace) failing its startup health probe with HTTP 500 status. The probe response shows:

  • [-]backend-proxy-http failed: reason withheld — the router's backend proxy HTTP check failed
  • [-]has-synced failed: reason withheld — the router had not completed syncing its configuration
  • [+]process-running ok — the HAProxy process was running fine

The router container kept starting (exit code 0 / "Completed"), but the startup probe killed it every time before it could become ready. After 9 restart cycles and exceeding the ProgressDeadlineExceeded timeout, the deployment remained at 0/1 ready replicas.

Cascade chain:

  1. Router CrashLoopBackOff → ingress operator Unavailable/Degraded
  2. Ingress unavailable → openshift-apiserver stuck at PreconditionNotReady (API services not ready)
  3. OpenShift API server not ready → Route CRD not registered → monitoring operator cannot create Routes for Alertmanager, Thanos, Prometheus
  4. Ingress unavailable → authentication operator Degraded (OAuth endpoints unreachable, connection refused to oauth-server at 172.30.66.48:443)
  5. Multiple operators unavailable → bootstrap condition never satisfied → timed out after 45 minutes

This is a known class of transient CI infrastructure failure where the router pod cannot complete its backend sync during cluster installation. The c5n.metal worker instance type (bare metal) may contribute to longer startup times. The PR's changes (adding [Sippy] and [CR:...] test name annotations) do not modify any cluster installation, networking, or infrastructure code.

Recommendations
  1. Retry the job — This is a transient infrastructure failure unrelated to the PR's code changes. Use /retest or /test e2e-kubevirt-aws-ovn-reduced to re-trigger.
  2. No code changes needed — PR NO-JIRA: Add Sippy/CR test name annotations to v2 e2e tests #8739 adds Sippy/CR test name annotations to v2 e2e tests and does not affect cluster installation or the ingress stack.
  3. If the failure recurs repeatedly, investigate whether the c5n.metal instance type causes slower router startup due to hardware initialization time, and whether the bootstrap timeout or router startup probe thresholds need adjustment for bare-metal worker nodes.
Evidence
Evidence Detail
Failed Step ipi-install-install (pre phase) — exit code 5 after 55m38s
Router Pod router-default-5b9668df8f-v69p8 in CrashLoopBackOff, 9 restarts
Router Exit Code 0 ("Completed") — process ran fine but killed by startup probe
Startup Probe HTTP 500: backend-proxy-http failed, has-synced failed
Probe Timeline First probe failure at 12:17:15, last probe error at 12:47:32
Worker Node ip-10-0-92-242.ec2.internal — Ready, no resource pressure
Instance Type c5n.metal (bare metal worker)
Node Count 4 nodes (3 masters + 1 worker), all Ready
MCP Status Both master and worker pools fully updated
Degraded Operators ingress, authentication, monitoring, openshift-apiserver
Bootstrap Timeout 45 minutes (12:39 UTC), started waiting at ~11:54 UTC
ClusterVersion Progressing=True, Available=False, reason=MultipleErrors
PR Scope Adds [Sippy]/[CR:...] annotations to test names — no infra changes

@openshift-ci

openshift-ci Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

@bryan-cox: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-merge-bot openshift-merge-bot Bot merged commit d57c438 into openshift:main Jun 16, 2026
42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/documentation Indicates the PR includes changes for documentation area/platform/aws PR/issue for AWS (AWSPlatform) platform area/platform/azure PR/issue for Azure (AzurePlatform) platform area/testing Indicates the PR includes changes for e2e testing jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants