Skip to content

✨ OPRUN-4514: Move Single Own Namespace support back to alpha#2568

Merged
openshift-merge-bot[bot] merged 1 commit intooperator-framework:mainfrom
tmshort:sons-tp
Mar 16, 2026
Merged

✨ OPRUN-4514: Move Single Own Namespace support back to alpha#2568
openshift-merge-bot[bot] merged 1 commit intooperator-framework:mainfrom
tmshort:sons-tp

Conversation

@tmshort
Copy link
Contributor

@tmshort tmshort commented Mar 16, 2026

Effectively reverts #2428

Description

Reviewer Checklist

  • API Go Documentation
  • Tests: Unit Tests (and E2E Tests, if appropriate)
  • Comprehensive Commit Messages
  • Links to related GitHub Issue(s)

Signed-off-by: Todd Short <tshort@redhat.com>
Copilot AI review requested due to automatic review settings March 16, 2026 20:08
@openshift-ci openshift-ci bot requested a review from grokspawn March 16, 2026 20:08
@netlify
Copy link

netlify bot commented Mar 16, 2026

Deploy Preview for olmv1 ready!

Name Link
🔨 Latest commit 6044b70
🔍 Latest deploy log https://app.netlify.com/projects/olmv1/deploys/69b863338425bb00086e297e
😎 Deploy Preview https://deploy-preview-2568--olmv1.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR moves SingleOwnNamespaceInstallSupport back to alpha (disabled by default) and scopes the ClusterExtension.spec.config field back to experimental CRD generation, effectively reverting the GA promotion from #2428.

Changes:

  • Set SingleOwnNamespaceInstallSupport to Alpha and Default=false, and update e2e defaults accordingly.
  • Remove spec.config from standard CRDs (including helm standard CRD), while keeping it available in experimental CRDs and marking it experimental in Go types / API docs.
  • Update manifests, Helm/Tilt configs, docs, and demo scripts to reflect the alpha/experimental gating.

Reviewed changes

Copilot reviewed 17 out of 17 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
test/e2e/steps/hooks.go Default feature gate map updated to reflect alpha/off behavior for Single/Own namespace installs.
manifests/standard.yaml Removes spec.config from the standard ClusterExtension CRD schema.
manifests/standard-e2e.yaml Removes spec.config from the standard-e2e ClusterExtension CRD schema.
manifests/experimental.yaml Ensures experimental deployment args enable SingleOwnNamespaceInstallSupport.
manifests/experimental-e2e.yaml Ensures experimental-e2e deployment args enable SingleOwnNamespaceInstallSupport.
internal/operator-controller/features/features.go Moves Single/Own namespace support back to Alpha and disables by default.
helm/tilt.yaml Enables SingleOwnNamespaceInstallSupport in Tilt dev configuration.
helm/olmv1/base/operator-controller/crd/standard/olm.operatorframework.io_clusterextensions.yaml Removes spec.config from the standard helm CRD.
helm/experimental.yaml Enables SingleOwnNamespaceInstallSupport in experimental helm values.
hack/demo/single-namespace-demo-script.sh Switches demos to experimental CRDs and patches feature gate on; cleanup logic updated (but currently broken).
hack/demo/own-namespace-demo-script.sh Switches demos to experimental CRDs and patches feature gate on; cleanup logic updated (but currently broken).
docs/tutorials/explore-available-content.md Adds note about needing the feature gate for Single/Own namespace targeting.
docs/draft/tutorials/explore-available-content-metas-endpoint.md Same note added to the draft tutorial.
docs/draft/howto/single-ownnamespace-install.md Updates guidance to explicitly enable the alpha feature gate and adds enablement steps.
docs/api-reference/olmv1-api-reference.md Marks spec.config as experimental in the API reference output.
applyconfigurations/api/v1/clusterextensionspec.go Marks Config field as experimental in applyconfiguration comments.
api/v1/clusterextension_types.go Marks Config field as experimental in API type comments.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.


# restore standard CRDs
echo "Restoring standard CRDs..."
kubectl apply -f "$(dirname "${BASH_SOURCE[0]}")/../../manifests/base.yaml"

!!! note
The `SingleOwnNamespaceInstallSupport` feature-gate is enabled by default. Use this guide to configure bundles that need Single or Own namespace install modes.
This feature is still in *alpha* the `SingleOwnNamespaceInstallSupport` feature-gate must be enabled to make use of it.
Comment on lines +64 to +65
echo "Removing feature gate from operator-controller..."
kubectl patch deployment -n olmv1-system operator-controller-controller-manager --type='json' -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/args", "value": "--feature-gates=SingleOwnNamespaceInstallSupport=true"}]' || true

# restore standard CRDs
echo "Restoring standard CRDs..."
kubectl apply -f "$(dirname "${BASH_SOURCE[0]}")/../../manifests/base.yaml"
Comment on lines +60 to +62
# remove feature gate from deployment
echo "Removing feature gate from operator-controller..."
kubectl patch deployment -n olmv1-system operator-controller-controller-manager --type='json' -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/args", "value": "--feature-gates=SingleOwnNamespaceInstallSupport=true"}]' || true
@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Mar 16, 2026
@openshift-ci
Copy link

openshift-ci bot commented Mar 16, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: grokspawn

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 Mar 16, 2026
@openshift-merge-bot openshift-merge-bot bot merged commit e7a9611 into operator-framework:main Mar 16, 2026
30 of 31 checks passed
@tmshort tmshort deleted the sons-tp branch March 16, 2026 20:33
@codecov
Copy link

codecov bot commented Mar 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 68.61%. Comparing base (475e134) to head (6044b70).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2568      +/-   ##
==========================================
- Coverage   68.64%   68.61%   -0.04%     
==========================================
  Files         131      131              
  Lines        9333     9333              
==========================================
- Hits         6407     6404       -3     
- Misses       2433     2438       +5     
+ Partials      493      491       -2     
Flag Coverage Δ
e2e 39.00% <ø> (-3.21%) ⬇️
experimental-e2e 51.62% <ø> (-0.17%) ⬇️
unit 53.84% <ø> (ø)

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

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

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

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. crd-diff-override 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