Skip to content

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

Merged
openshift-merge-bot[bot] merged 1 commit into
operator-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 into
operator-framework:mainfrom
tmshort:sons-tp

Conversation

@tmshort

Copy link
Copy Markdown
Contributor

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>
CopilotAI review requested due to automatic review settings March 16, 2026 20:08
@openshift-ci
openshift-ciBot requested a review from grokspawnMarch 16, 2026 20:08
@netlify

netlifyBot commented Mar 16, 2026

Copy link
Copy Markdown

Deploy Preview for olmv1 ready!

NameLink
🔨 Latest commit6044b70
🔍 Latest deploy loghttps://app.netlify.com/projects/olmv1/deploys/69b863338425bb00086e297e
😎 Deploy Previewhttps://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.

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

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
FileDescription
test/e2e/steps/hooks.goDefault feature gate map updated to reflect alpha/off behavior for Single/Own namespace installs.
manifests/standard.yamlRemoves spec.config from the standard ClusterExtension CRD schema.
manifests/standard-e2e.yamlRemoves spec.config from the standard-e2e ClusterExtension CRD schema.
manifests/experimental.yamlEnsures experimental deployment args enable SingleOwnNamespaceInstallSupport.
manifests/experimental-e2e.yamlEnsures experimental-e2e deployment args enable SingleOwnNamespaceInstallSupport.
internal/operator-controller/features/features.goMoves Single/Own namespace support back to Alpha and disables by default.
helm/tilt.yamlEnables SingleOwnNamespaceInstallSupport in Tilt dev configuration.
helm/olmv1/base/operator-controller/crd/standard/olm.operatorframework.io_clusterextensions.yamlRemoves spec.config from the standard helm CRD.
helm/experimental.yamlEnables SingleOwnNamespaceInstallSupport in experimental helm values.
hack/demo/single-namespace-demo-script.shSwitches demos to experimental CRDs and patches feature gate on; cleanup logic updated (but currently broken).
hack/demo/own-namespace-demo-script.shSwitches demos to experimental CRDs and patches feature gate on; cleanup logic updated (but currently broken).
docs/tutorials/explore-available-content.mdAdds note about needing the feature gate for Single/Own namespace targeting.
docs/draft/tutorials/explore-available-content-metas-endpoint.mdSame note added to the draft tutorial.
docs/draft/howto/single-ownnamespace-install.mdUpdates guidance to explicitly enable the alpha feature gate and adds enablement steps.
docs/api-reference/olmv1-api-reference.mdMarks spec.config as experimental in the API reference output.
applyconfigurations/api/v1/clusterextensionspec.goMarks Config field as experimental in applyconfiguration comments.
api/v1/clusterextension_types.goMarks 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"
Comment threaddocs/tutorials/explore-available-content.md

!!! 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-ciopenshift-ciBot added the lgtm Indicates that a PR is ready to be merged. label Mar 16, 2026
@openshift-ci

Copy link
Copy Markdown

[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-ciopenshift-ciBot 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-botBot merged commit e7a9611 into operator-framework:mainMar 16, 2026
30 of 31 checks passed
@tmshort
tmshort deleted the sons-tp branch March 16, 2026 20:33
@codecov

codecovBot commented Mar 16, 2026

Copy link
Copy Markdown

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 
FlagCoverage Δ
e2e39.00% <ø> (-3.21%)⬇️
experimental-e2e51.62% <ø> (-0.17%)⬇️
unit53.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 freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approvedIndicates a PR has been approved by an approver from all required OWNERS files.crd-diff-overridelgtmIndicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@tmshort@grokspawn