Skip to content

STOR-2967: Update SnapshotMetadataService CRD asset from v1alpha1 to v1beta1 - #279

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
RomanBednar:STOR-2967
Jul 7, 2026
Merged

openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
RomanBednar:STOR-2967

Conversation

@RomanBednar

@RomanBednar RomanBednar commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Summary

Update the SnapshotMetadataService CRD asset from v1alpha1 to v1beta1, sourced from upstream kubernetes-csi/external-snapshot-metadata v1.0.0.

No Go code changes — the existing conditional deployment logic in starter.go already handles this CRD behind the ExternalSnapshotMetadata feature gate.

Breaking Change

Existing v1alpha1 SnapshotMetadataService CRs from DevPreview clusters are not preserved. DevPreview clusters cannot be upgraded — users must destroy and reprovision. This is expected for the DevPreview → TechPreview graduation.

Dependencies

  • Depends on STOR-2966 (feature gate promotion to TechPreviewNoUpgrade) merging first
  • Part of STOR-2900 epic (CBT Tech Preview)

References

Summary by CodeRabbit

  • Chores
    • Updated SnapshotMetadataService API version to beta, reflecting progression towards increased stability and production readiness.

…v1beta1

Replace the SnapshotMetadataService CRD with the v1beta1 version from
upstream kubernetes-csi/external-snapshot-metadata v1.0.0.

Upstream v1.0.0 removed v1alpha1 entirely (PR openshift#215). The rebased sidecar
(STOR-2965) only speaks v1beta1, so the CRD must match.

Breaking change: Existing v1alpha1 SnapshotMetadataService CRs from
DevPreview clusters are not preserved. DevPreview clusters cannot be
upgraded — users must destroy and reprovision.

No operator Go code changes needed — the existing conditional deployment
logic in starter.go already handles this CRD behind the
ExternalSnapshotMetadata feature gate.
@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 11, 2026
@openshift-ci-robot

openshift-ci-robot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

@RomanBednar: This pull request references STOR-2967 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

Update the SnapshotMetadataService CRD asset from v1alpha1 to v1beta1, sourced from upstream kubernetes-csi/external-snapshot-metadata v1.0.0.

No Go code changes — the existing conditional deployment logic in starter.go already handles this CRD behind the ExternalSnapshotMetadata feature gate.

Breaking Change

Existing v1alpha1 SnapshotMetadataService CRs from DevPreview clusters are not preserved. DevPreview clusters cannot be upgraded — users must destroy and reprovision. This is expected for the DevPreview → TechPreview graduation.

Dependencies

  • Depends on STOR-2966 (feature gate promotion to TechPreviewNoUpgrade) merging first
  • Part of STOR-2900 epic (CBT Tech Preview)

References

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 11, 2026

Copy link
Copy Markdown

Walkthrough

This PR updates the snapshotmetadataservices.cbt.storage.k8s.io CustomResourceDefinition to promote its API version from v1alpha1 to v1beta1 in the CRD manifest.

Changes

CRD Version Promotion

Layer / File(s) Summary
CRD version upgrade
assets/snapshotmetadataservices.yaml
The SnapshotMetadataService CustomResourceDefinition spec.versions entry updates the version identifier from v1alpha1 to v1beta1.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
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 PR does not contain Ginkgo tests; added test/e2e/operator_test.go uses standard Go testing (testing.T), not Ginkgo. Check is not applicable.
Test Structure And Quality ✅ Passed This PR modifies only the SnapshotMetadataService CRD YAML asset file (v1alpha1→v1beta1), with no test code changes. The custom check for Ginkgo test quality is not applicable as no tests are modif...
Microshift Test Compatibility ✅ Passed This PR modifies only the SnapshotMetadataService CRD YAML asset (v1alpha1 to v1beta1), with no Ginkgo e2e test additions. The check is not applicable.
Single Node Openshift (Sno) Test Compatibility ✅ Passed PR modifies only assets/snapshotmetadataservices.yaml (YAML CRD file); no Ginkgo e2e test code added, so SNO compatibility check does not apply.
Topology-Aware Scheduling Compatibility ✅ Passed PR only updates a CRD asset file (snapshotmetadataservices.yaml) version from v1alpha1 to v1beta1. No deployment manifests, operator code, or scheduling constraints are added or modified.
Ote Binary Stdout Contract ✅ Passed This PR modifies only a YAML asset file in a Kubernetes operator (not an OTE test binary). The check for OTE Binary Stdout Contract is not applicable to non-OTE binaries like operator control planes.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR adds standard Go unit tests (using testing.T), not Ginkgo e2e tests. Custom check applies only to Ginkgo e2e tests with It/Describe/Context/When patterns.
No-Weak-Crypto ✅ Passed PR modifies only a YAML CRD manifest with no cryptographic implementations, weak crypto patterns (MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB), or secret comparisons—check not applicable.
Container-Privileges ✅ Passed The PR changes only assets/snapshotmetadataservices.yaml, which is a CustomResourceDefinition (CRD) containing OpenAPI schema—not a container/pod manifest. CRDs have no container specs, so containe...
No-Sensitive-Data-In-Logs ✅ Passed The modified file contains only a Kubernetes CRD schema definition with no hardcoded passwords, tokens, API keys, PII, session IDs, internal hostnames, or customer data that could be exposed in logs.
Title check ✅ Passed The title clearly and specifically describes the main change: updating a SnapshotMetadataService CRD asset from v1alpha1 to v1beta1, which matches the single file modification in the changeset.

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

@openshift-ci
openshift-ci Bot requested review from mpatlasov and tsmetana June 11, 2026 13:37
@openshift-ci

openshift-ci Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: RomanBednar

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 Jun 11, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

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 `@assets/snapshotmetadataservices.yaml`:
- Line 20: The CRD in assets/snapshotmetadataservices.yaml was switched to
v1beta1 only (removed v1alpha1) without a conversion webhook, risking loss of
existing v1alpha1 CRs; confirm the operator's ExternalSnapshotMetadata
feature-gate behavior in pkg/operator/starter.go to ensure
DevPreview/TechPreviewNoUpgrade semantics guarantee reprovision/recreate (no
persisted v1alpha1 CRs), search the repo and test/staging clusters for any
v1alpha1 SnapshotMetadataService instances, and then either (A) restore backward
compatibility by adding a v1alpha1 entry to spec.versions or implement a
conversion webhook, or (B) document the breaking change in release notes/upgrade
docs with explicit operator actions for migrating or recreating v1alpha1 CRs.
🪄 Autofix (Beta)

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: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 27cd34c1-eaff-4afc-886a-7781776479e8

📥 Commits

Reviewing files that changed from the base of the PR and between ed3c0c6 and 9c26521.

📒 Files selected for processing (1)
  • assets/snapshotmetadataservices.yaml

Comment thread assets/snapshotmetadataservices.yaml
@RomanBednar RomanBednar changed the title STOR-2967: Update SnapshotMetadataService CRD asset from v1alpha1 to v1beta1 WIP: STOR-2967: Update SnapshotMetadataService CRD asset from v1alpha1 to v1beta1 Jun 11, 2026
@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 11, 2026
@RomanBednar

Copy link
Copy Markdown
Contributor Author

/hold

Wait for openshift/api#2887 to merge.

@openshift-ci openshift-ci Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jun 23, 2026
@RomanBednar RomanBednar changed the title WIP: STOR-2967: Update SnapshotMetadataService CRD asset from v1alpha1 to v1beta1 STOR-2967: Update SnapshotMetadataService CRD asset from v1alpha1 to v1beta1 Jun 23, 2026
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jun 23, 2026
@RomanBednar

Copy link
Copy Markdown
Contributor Author

/retest

@RomanBednar

Copy link
Copy Markdown
Contributor Author

/retest-required

@RomanBednar

Copy link
Copy Markdown
Contributor Author

/verified by CI
/unhold

@openshift-ci openshift-ci Bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 7, 2026
@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jul 7, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@RomanBednar: This PR has been marked as verified by CI.

Details

In response to this:

/verified by CI
/unhold

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.

@jsafrane

jsafrane commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

/lgtm

I checked the OCP yaml is idential to the upstream one

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

dobsonj commented Jul 7, 2026

Copy link
Copy Markdown
Member

/retest

@openshift-ci

openshift-ci Bot commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

@RomanBednar: 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 ef7a4c8 into openshift:main Jul 7, 2026
14 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. 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