Skip to content

AGENT-1493: Promote NoRegistryClusterInstall Feature to Default - #2859

Open
sadasu wants to merge 2 commits into
openshift:masterfrom
sadasu:agent-iri-promotion
Open

AGENT-1493: Promote NoRegistryClusterInstall Feature to Default#2859
sadasu wants to merge 2 commits into
openshift:masterfrom
sadasu:agent-iri-promotion

Conversation

@sadasu

@sadasu sadasu commented May 26, 2026

Copy link
Copy Markdown
Contributor

Feature NoRegistryClusterInstall is ready to be supported during Agent installs by default.

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

openshift-ci-robot commented May 26, 2026

Copy link
Copy Markdown

@sadasu: This pull request references AGENT-1394 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 epic to target only the "5.0.0" version, but multiple target versions were set.

Details

In response to this:

Feature NoRegistryClusterInstall is ready to be supported during Agent installs by default.

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 May 26, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR enables NoRegistryClusterInstall for Default and OKD profiles, updates its documentation and FeatureGate manifests, adds MachineConfigNode CRDs for SelfManagedHA Default and OKD, removes selected CRD annotations, and extends the feature-gate test analyzer with install-specific Sippy queries, thresholds, reporting, validation, and tests.

Possibly related PRs

  • openshift/api#2943: Updates the same feature-gate analyzer and install-specific validation logic.

Suggested reviewers: joelspeed, everettraven


Important

Pre-merge checks failed

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

❌ Failed checks (1 warning, 2 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Stable And Deterministic Test Names ❓ Inconclusive placeholder Need file evidence before final verdict.
Ipv6 And Disconnected Network Test Compatibility ❓ Inconclusive pending investigation Need to verify whether any newly added Ginkgo e2e tests exist in the changed files.
✅ Passed checks (12 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: promoting NoRegistryClusterInstall to the default feature set.
Description check ✅ Passed The description is directly related and matches the change to enable NoRegistryClusterInstall by default for Agent installs.
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.
Test Structure And Quality ✅ Passed PR only adds standard Go unit tests, not Ginkgo specs; no cluster waits, cleanup, or timeout patterns apply.
Microshift Test Compatibility ✅ Passed No new Ginkgo e2e tests were added in the changed files; the PR only modifies codegen logic, so MicroShift compatibility is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No Ginkgo e2e tests were added; the PR only changes codegen logic, so SNO compatibility is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed The PR only edits feature-gate metadata, CRDs, and codegen; no Deployment/Pod specs, affinity, nodeSelector, replicas, or PDBs were added.
Ote Binary Stdout Contract ✅ Passed No OTE process-level entrypoints or suite setup were changed; the only stdout writes are helper diagnostics in the codegen tool, not main/init/TestMain/BeforeSuite code.
No-Weak-Crypto ✅ Passed Patch only adds self-managed metal variants and formatting in the analyzer; no weak crypto, custom crypto, or secret/token comparisons were introduced.
Container-Privileges ✅ Passed Touched files are CRDs, feature gates, docs, and Go code; no privileged/securityContext fields were present in the YAMLs.
No-Sensitive-Data-In-Logs ✅ Passed Touched logging only prints feature-gate names, job variants, and generic Sippy status; no passwords, tokens, PII, or customer data appear.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@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 May 26, 2026

Copy link
Copy Markdown
Contributor

Hello @sadasu! Some important instructions when contributing to openshift/api:
API design plays an important part in the user experience of OpenShift and as such API PRs are subject to a high level of scrutiny to ensure they follow our best practices. If you haven't already done so, please review the OpenShift API Conventions and ensure that your proposed changes are compliant. Following these conventions will help expedite the api review process for your PR.

@openshift-ci openshift-ci Bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label May 26, 2026
@openshift-ci
openshift-ci Bot requested review from JoelSpeed and yuqi-zhang May 26, 2026 15:56
Comment thread features/features.go
@sadasu sadasu changed the title AGENT-1394: Promote NoRegistryClusterInstall Feature to Default AGENT-1493: Promote NoRegistryClusterInstall Feature to Default May 26, 2026
@openshift-ci-robot

openshift-ci-robot commented May 26, 2026

Copy link
Copy Markdown

@sadasu: This pull request references AGENT-1493 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:

Feature NoRegistryClusterInstall is ready to be supported during Agent installs by default.

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.

@sadasu

sadasu commented May 26, 2026

Copy link
Copy Markdown
Contributor Author

/jira refresh

@openshift-ci-robot

openshift-ci-robot commented May 26, 2026

Copy link
Copy Markdown

@sadasu: This pull request references AGENT-1493 which is a valid jira issue.

Details

In response to this:

/jira refresh

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.

api-approved.openshift.io: https://github.com/openshift/api/pull/2510
api.openshift.io/merged-by-featuregates: "true"
include.release.openshift.io/self-managed-high-availability: "true"
release.openshift.io/feature-set: CustomNoUpgrade,DevPreviewNoUpgrade,TechPreviewNoUpgrade

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.

Looks like the IRI object itself is still v1alpha1 only: https://github.com/openshift/api/blob/master/machineconfiguration/v1alpha1/types_internalreleaseimage.go ?

We don't allow GA'ing with a alpha API. We would need to graduate the API to v1 first, before we graduate the dependent feature.

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.

Do we require a separate PR for that?

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.

@andfasano Yes, lets create a separate PR for that.

@andfasano

Copy link
Copy Markdown
Contributor

Requires #2863

@pawanpinjarkar

Copy link
Copy Markdown
Contributor

@sadasu the dependent PR #2880 is merged. Please rebase and fix the the conflicts.

@openshift-ci openshift-ci Bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 7, 2026
@sadasu
sadasu force-pushed the agent-iri-promotion branch from e5c1c9a to 230642e Compare July 10, 2026 17:16
@openshift-ci openshift-ci Bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 10, 2026
@JoelSpeed

Copy link
Copy Markdown
Contributor

Do we have any specific periodic tests that demonstrate this feature behaving as described?

@andfasano

Copy link
Copy Markdown
Contributor

Do we have any specific periodic tests that demonstrate this feature behaving as described?

Yes, we added four different TP periodic jobs to cover all the supported platform type/network/topology combinations, here: https://sippy.dptools.openshift.org/sippy-ng/jobs/5.0?filters=%257B%2522items%2522%253A%255B%257B%2522columnField%2522%253A%2522variants%2522%252C%2522operatorValue%2522%253A%2522has%2520entry%2522%252C%2522value%2522%253A%2522never-stable%2522%252C%2522not%2522%253Atrue%257D%252C%257B%2522id%2522%253A99%252C%2522columnField%2522%253A%2522name%2522%252C%2522operatorValue%2522%253A%2522contains%2522%252C%2522value%2522%253A%2522iso-no-registry%2522%257D%255D%257D&sort=asc&sortField=net_improvement.

Please note that the latest PR for bumping the IRI api to v1 successfully landed on Friday, but we didn't yet get a freshly updated green 5.0 nightly payload, thus the current stripe of failures.
Given that the daily presubmits jobs are fine, I'd expect to have again green periodics as soon as a new green nightly will be available (rebuilt with the latest available images)

@JoelSpeed

Copy link
Copy Markdown
Contributor

Could we please add a mapping that maps the iso-no-registry style jobs to the NoRegistryClusterInstall featuregate please?

@andfasano

Copy link
Copy Markdown
Contributor

Could we please add a mapping that maps the iso-no-registry style jobs to the NoRegistryClusterInstall featuregate please?

Recently we did some work with TRT to add the mapping in Sippy CR openshift-eng/ci-test-mapping#767. We've been able also to start gathering some data from the aforementioned jobs, this view seems to work right now

@yuqi-zhang

Copy link
Copy Markdown
Contributor

Functionally speaking the code is fine. I think this is ready for merge once feature-promotion is green

@sadasu

sadasu commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

/test verify-feature-promotion

verify-feature-promotion test is not able to find the NoRegistryClusterInstall jobs.
Will retest after openshift/sippy#3772.

@JoelSpeed

Copy link
Copy Markdown
Contributor

/test verify-feature-promotion

@andfasano

Copy link
Copy Markdown
Contributor

It looks like at least now the tests are fetched

@andfasano

Copy link
Copy Markdown
Contributor

The fix for the single failing test openshift/origin#31394 landed and it was included in https://amd64.ocp.releases.ci.openshift.org/releasestream/5.0.0-0.nightly/release/5.0.0-0.nightly-2026-07-17-034502, so the trend should improve from the next green nightly (they are still red). The latest two runs per job installed and verified the cluster correctly, they just failed as per #31394

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 29, 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-aws-ovn
/test e2e-aws-ovn-hypershift
/test e2e-aws-ovn-hypershift-conformance
/test e2e-aws-ovn-techpreview
/test e2e-aws-serial-1of2
/test e2e-aws-serial-2of2
/test e2e-aws-serial-techpreview-1of2
/test e2e-aws-serial-techpreview-2of2
/test e2e-azure
/test e2e-gcp
/test e2e-upgrade
/test e2e-upgrade-out-of-change
/test minor-e2e-upgrade-minor

@openshift-ci

openshift-ci Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: everettraven

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 the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 29, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 72624b9 and 2 for PR HEAD 1cabfcf in total

@bfournie

Copy link
Copy Markdown

/retest-required

3 similar comments
@bfournie

Copy link
Copy Markdown

/retest-required

@sadasu

sadasu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

/retest-required

@andfasano

Copy link
Copy Markdown
Contributor

/retest-required

@andfasano

Copy link
Copy Markdown
Contributor

It looks like that the current jobs failures (ie, e2e-aws-ovn) are due:

: [sig-arch][Early] APIs for openshift.io must have stable versions [Suite:openshift/conformance/parallel] expand_less 	2s
{  fail [github.com/openshift/origin/test/extended/operators/crd_must_be_stable.go:101]: crd/internalreleaseimages.machineconfiguration.openshift.io has an unstable version "v1alpha1" that is accessible-by-default. All CRDs accessible by default must be stable (v1, v2, etc) with guaranteed compatibility and upgradeability ~forever.}

@everettraven @JoelSpeed during the version bump we discussed to keep them both (v1 and v1alpha1) but currently it looks like a blocker for the promotion. Would you recommend cleaning up the CRD first by removing v1alpha1?

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@sadasu: 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/prow/e2e-aws-serial-1of2 1cabfcf link true /test e2e-aws-serial-1of2
ci/prow/e2e-aws-ovn 1cabfcf link true /test e2e-aws-ovn
ci/prow/e2e-azure 1cabfcf link true /test e2e-azure
ci/prow/e2e-gcp 1cabfcf link true /test e2e-gcp
ci/prow/e2e-upgrade-out-of-change 1cabfcf link true /test e2e-upgrade-out-of-change
ci/prow/e2e-aws-serial-2of2 1cabfcf link true /test e2e-aws-serial-2of2

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.

sadasu added 2 commits July 30, 2026 10:15
Feature NoRegistryClusterInstall is ready to be supported during
Agent installs by default.
Keep v1alpha1 in the CRD for conversion/storage purposes but stop
the API server from exposing it. v1 of the CRD should be the only
version served.
@sadasu
sadasu force-pushed the agent-iri-promotion branch from 1cabfcf to f7ab66e Compare July 30, 2026 14:54
@openshift-ci-robot openshift-ci-robot removed the verified Signifies that the PR passed pre-merge verification criteria label Jul 30, 2026
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jul 30, 2026
@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

New changes are detected. LGTM label has been removed.

@sadasu

sadasu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn

@qodo-for-rh-openshift

qodo-for-rh-openshift Bot commented Jul 30, 2026

Copy link
Copy Markdown

PR-Agent: could not find a component named e2e-aws-ovn in a supported language in this PR.

@sadasu

sadasu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

/payload-job periodic-ci-openshift-release-main-nightly-5.0-e2e-agent-ha5-dualstack-iso-no-registry-techpreview

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@sadasu: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • periodic-ci-openshift-release-main-nightly-5.0-e2e-agent-ha5-dualstack-iso-no-registry-techpreview

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/5a456720-8c31-11f1-82d1-08ea718d2048-0

@pawanpinjarkar

Copy link
Copy Markdown
Contributor

/payload-job periodic-ci-openshift-release-main-nightly-5.0-e2e-agent-compact-ipv4-iso-no-registry-techpreview

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@pawanpinjarkar: trigger 0 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

@pawanpinjarkar

Copy link
Copy Markdown
Contributor

/payload-job periodic-ci-openshift-release-main-nightly-5.0-e2e-agent-compact-iso-no-registry-techpreview

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@pawanpinjarkar: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • periodic-ci-openshift-release-main-nightly-5.0-e2e-agent-compact-iso-no-registry-techpreview

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/06ed2970-8c34-11f1-98fb-ea5df7caf324-0

@sadasu

sadasu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

/payload-job-with-prs e2e-aws-ovn openshift/origin#31458

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@sadasu: it appears that you have attempted to use some version of the payload command, but your comment was incorrectly formatted and cannot be acted upon. See the docs for usage info.

@sadasu

sadasu commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

/payload-job-with-prs e2e-aws-ovn openshift/origin#31458

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@sadasu: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • e2e-aws-ovn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/358c41e0-8c51-11f1-8da8-371837a4b288-0

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. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants