Skip to content

NE-2788: drop TechPreview from haproxy28 presubmits and add FIPS variant - #83065

Open
gcs278 wants to merge 1 commit into
openshift:mainfrom
gcs278:haproxy28-periodics-and-cleanup
Open

NE-2788: drop TechPreview from haproxy28 presubmits and add FIPS variant#83065
gcs278 wants to merge 1 commit into
openshift:mainfrom
gcs278:haproxy28-periodics-and-cleanup

Conversation

@gcs278

@gcs278 gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Drop FEATURE_SET: TechPreviewNoUpgrade from all haproxy28 presubmits in CIO and router repos (FG is now GA)
  • Rename *-haproxy28-techpreview*-haproxy28 across all presubmits
  • Add e2e-aws-ovn-fips-haproxy28 presubmit to CIO
  • Add e2e-aws-fips-haproxy28 presubmit to router

Why

The haproxy28 presubmits were using TechPreviewNoUpgrade, which meant upgrade jobs could never work (TP clusters can't upgrade). With the feature gate promoted to GA, we can drop the TP requirement and the upgrade jobs now function correctly.

HAProxy 2.8 uses OpenSSL 1.1/pcre1 while 3.2 uses OpenSSL 3.x/pcre2. A FIPS variant is added to both repos since the crypto paths differ.

Test plan

  • Verify renamed presubmits can be triggered via /test
  • Verify FIPS haproxy28 jobs install with FIPS enabled

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Updated CIO and router presubmit configurations for HAProxy 2.8.
  • Removed the TechPreviewNoUpgrade feature set and -techpreview suffix.
  • Added optional FIPS-enabled HAProxy 2.8 AWS presubmit jobs.
  • Enabled HAProxy 2.8 upgrade testing after GA promotion.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Aug 6, 2026
@openshift-ci-robot

openshift-ci-robot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

@gcs278: This pull request references NE-2788 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

  • Drop FEATURE_SET: TechPreviewNoUpgrade from all haproxy28 presubmits in CIO and router repos (FG is now GA)
  • Rename *-haproxy28-techpreview*-haproxy28 across all presubmits
  • Add five weekly nightly periodic jobs for HAProxy 2.8 coverage
  • Add a FIPS haproxy28 presubmit to CIO

Nightly periodics added

Job Config Cadence
e2e-aws-ovn-haproxy28 __nightly-5.0.yaml Weekly
e2e-aws-ovn-serial-haproxy28 __nightly-5.0.yaml Weekly
e2e-aws-ovn-upgrade-haproxy28 __nightly-5.0.yaml Weekly
e2e-aws-ovn-fips-haproxy28 __nightly-5.0.yaml Weekly
e2e-aws-ovn-upgrade-from-stable-haproxy28 __nightly-5.0-upgrade-from-stable-4.22.yaml Weekly

Why

The haproxy28 presubmits were using TechPreviewNoUpgrade, which meant upgrade jobs could never work (TP clusters can't upgrade). With the feature gate promoted to GA, we can drop the TP requirement and the upgrade jobs now function correctly.

Nightly periodics provide continuous CI signal for the non-default HAProxy version. HAProxy 2.8 uses different OpenSSL/pcre versions than 3.2, so a FIPS variant is included.

All jobs run on AWS only — HAProxy behavior is platform-agnostic.

Test plan

  • Verify renamed presubmits can be triggered via /test
  • Verify nightly periodics appear in the release controller
  • Verify FIPS haproxy28 job installs with FIPS enabled and runs conformance

🤖 Generated with Claude Code

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 Aug 6, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: f1d94281-0765-416d-b4e2-91b8a81c28c5

📥 Commits

Reviewing files that changed from the base of the PR and between 2ee2c72 and 4269f59.

⛔ Files ignored due to path filters (2)
  • ci-operator/jobs/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master-presubmits.yaml is excluded by !ci-operator/jobs/**
  • ci-operator/jobs/openshift/router/openshift-router-master-presubmits.yaml is excluded by !ci-operator/jobs/**
📒 Files selected for processing (2)
  • ci-operator/config/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master.yaml
  • ci-operator/config/openshift/router/openshift-router-master.yaml
🚧 Files skipped from review as they are similar to previous changes (2)
  • ci-operator/config/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master.yaml
  • ci-operator/config/openshift/router/openshift-router-master.yaml

Walkthrough

The CI configuration renames HAProxy 2.8 jobs, removes their TechPreview feature-set settings, and adds optional AWS FIPS jobs with HAProxy 2.8 settings and FIPS checks.

Changes

HAProxy 2.8 CI configuration

Layer / File(s) Summary
Standardize HAProxy 2.8 jobs
ci-operator/config/openshift/cluster-ingress-operator/..., ci-operator/config/openshift/router/...
AWS and Azure HAProxy 2.8 jobs were renamed without the -techpreview suffix. Their TechPreviewNoUpgrade settings were removed.
Add AWS FIPS jobs
ci-operator/config/openshift/cluster-ingress-operator/..., ci-operator/config/openshift/router/...
Optional AWS FIPS jobs were added with FIPS_ENABLED, HAPROXY_VERSION: 2.8, FIPS checks, and AWS workflows.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

Suggested reviewers: miciah, neisw


Important

Pre-merge checks failed

Please resolve all errors before merging. Addressing warnings is optional.

❌ Failed checks (1 error)

Check name Status Explanation Resolution
No-Sensitive-Data-In-Logs ❌ Error The new FIPS jobs invoke fips-check, whose existing output prints each cluster node name in success and error messages, exposing internal hostnames in CI logs. Redact or hash node names in fips-check output, and report only aggregate FIPS status without identifiers.
✅ Passed checks (14 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the primary changes: removing TechPreview from HAProxy 2.8 presubmits and adding a FIPS variant.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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 The PR changes only ci-operator YAML job names and settings; no Ginkgo It, Describe, Context, or When test titles were added or changed.
Test Structure And Quality ✅ Passed The pull request changes only ci-operator YAML configuration and generated presubmit YAML; it adds no Ginkgo test code or It blocks to review.
Microshift Test Compatibility ✅ Passed The PR changes only CI configuration and presubmit job YAML; it adds no Ginkgo tests or test references that require MicroShift API compatibility checks.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The diff changes only four YAML CI configuration/job files; no Go files or Ginkgo test declarations were added, so SNO compatibility checks do not apply.
Topology-Aware Scheduling Compatibility ✅ Passed The PR changes only CI test and generated Prow presubmit YAML; added content introduces no affinity, topology spread, node selector, toleration, replica, or PDB scheduling constraints.
Ote Binary Stdout Contract ✅ Passed The patch changes only four YAML files; no executable source or process-level stdout writes were added.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The patch changes only four CI YAML files and adds no Ginkgo declarations, test source files, IPv4 literals, or external URLs; this check is not applicable.
No-Weak-Crypto ✅ Passed The patch only changes CI job names, environment settings, and generated Prow YAML; no MD5, SHA-1, DES, RC4, Blowfish, ECB, crypto code, or secret comparisons were added.
Container-Privileges ✅ Passed The four changed YAML files add or rename CI jobs only; added lines contain no privileged, hostPID, hostNetwork, hostIPC, SYS_ADMIN, securityContext, or allowPrivilegeEscalation settings.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci
openshift-ci Bot requested review from Miciah and neisw August 6, 2026 19:37
@gcs278
gcs278 force-pushed the haproxy28-periodics-and-cleanup branch 2 times, most recently from a39a2e5 to 7babd7c Compare August 6, 2026 19:40
@gcs278 gcs278 changed the title NE-2788: add haproxy28 nightly periodics and drop TechPreview from presubmits NE-2788: drop TechPreview from haproxy28 presubmits and add FIPS variant Aug 6, 2026
@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Aug 6, 2026
@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 6, 2026

@coderabbitai coderabbitai Bot left a comment

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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ci-operator/config/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master.yaml`:
- Line 165: Run make update to regenerate the CI jobs from the renamed source
tests, replacing old *-haproxy28-techpreview references and adding generated
coverage for e2e-aws-ovn-fips-haproxy28. Apply the generated updates at
ci-operator/config/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master.yaml
ranges 165-165, 184-184, 317-317, and 359-373, and
ci-operator/config/openshift/router/openshift-router-master.yaml ranges 119-132
and 148-148, then commit the regenerated files.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 63093a4b-d586-4661-9bd1-a25c1fbf35b2

📥 Commits

Reviewing files that changed from the base of the PR and between 6085899 and 6ed152d.

📒 Files selected for processing (4)
  • ci-operator/config/openshift/cluster-ingress-operator/openshift-cluster-ingress-operator-master.yaml
  • ci-operator/config/openshift/release/openshift-release-main__nightly-5.0-upgrade-from-stable-4.22.yaml
  • ci-operator/config/openshift/release/openshift-release-main__nightly-5.0.yaml
  • ci-operator/config/openshift/router/openshift-router-master.yaml

@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

With the IngressControllerMultipleHAProxyVersions feature gate promoted
to GA, drop FEATURE_SET: TechPreviewNoUpgrade from all haproxy28
presubmits in CIO and router repos and rename from *-techpreview to
*-haproxy28. This fixes the upgrade presubmits which could never work
on TechPreviewNoUpgrade clusters.

Add FIPS haproxy28 presubmits to CIO and router since HAProxy 2.8 and
3.2 use different OpenSSL/pcre versions which may behave differently
in FIPS mode.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@gcs278
gcs278 force-pushed the haproxy28-periodics-and-cleanup branch from 7babd7c to 4269f59 Compare August 6, 2026 19:48
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@openshift-merge-bot openshift-merge-bot Bot removed the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label Aug 6, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@gcs278: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-operator-haproxy28 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-fips-haproxy28 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-haproxy28 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-serial-haproxy28-1of2 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-serial-haproxy28-2of2 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-upgrade-haproxy28 openshift/cluster-ingress-operator presubmit Presubmit changed
pull-ci-openshift-router-master-e2e-agnostic-haproxy28 openshift/router presubmit Presubmit changed
pull-ci-openshift-router-master-e2e-aws-fips-haproxy28 openshift/router presubmit Presubmit changed
pull-ci-openshift-router-master-e2e-aws-serial-haproxy28-1of2 openshift/router presubmit Presubmit changed
pull-ci-openshift-router-master-e2e-aws-serial-haproxy28-2of2 openshift/router presubmit Presubmit changed
pull-ci-openshift-router-master-e2e-upgrade-haproxy28 openshift/router presubmit Presubmit changed
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@gcs278

gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-haproxy28
/pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-upgrade-haproxy28
/pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-fips-haproxy28
/pj-rehearse pull-ci-openshift-router-master-e2e-agnostic-haproxy28

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@gcs278

gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

/test config

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: requesting more than one rehearsal in one comment is not supported. If you would like to rehearse multiple specific jobs, please separate the job names by a space in a single command.

2 similar comments
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: requesting more than one rehearsal in one comment is not supported. If you would like to rehearse multiple specific jobs, please separate the job names by a space in a single command.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: requesting more than one rehearsal in one comment is not supported. If you would like to rehearse multiple specific jobs, please separate the job names by a space in a single command.

@jcmoraisjr

Copy link
Copy Markdown
Member

Good timing. Looks solid.

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Aug 6, 2026
@openshift-ci

openshift-ci Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: gcs278, jcmoraisjr

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

@gcs278

gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-upgrade-haproxy28

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@gcs278

gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-fips-haproxy28

@gcs278

gcs278 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor Author

/pj-rehearse pull-ci-openshift-router-master-e2e-agnostic-haproxy28

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

@gcs278: your /pj-rehearse request was not processed because the request waited in queue for longer than 5 minutes. Please retry in a few minutes.

@openshift-ci

openshift-ci Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

@gcs278: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/rehearse/openshift/cluster-ingress-operator/master/e2e-aws-ovn-haproxy28 4269f59 link unknown /pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-haproxy28
ci/rehearse/openshift/cluster-ingress-operator/master/e2e-aws-ovn-fips-haproxy28 4269f59 link unknown /pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-fips-haproxy28
ci/rehearse/openshift/cluster-ingress-operator/master/e2e-aws-ovn-upgrade-haproxy28 4269f59 link unknown /pj-rehearse pull-ci-openshift-cluster-ingress-operator-master-e2e-aws-ovn-upgrade-haproxy28

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.

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. 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants