Skip to content

rbd: use StorageClass image features for temp clones and snapshots (backport #6205)#6217

Open
mergify[bot] wants to merge 2 commits intorelease-v3.16from
mergify/bp/release-v3.16/pr-6205
Open

rbd: use StorageClass image features for temp clones and snapshots (backport #6205)#6217
mergify[bot] wants to merge 2 commits intorelease-v3.16from
mergify/bp/release-v3.16/pr-6205

Conversation

@mergify
Copy link
Copy Markdown
Contributor

@mergify mergify bot commented Apr 1, 2026

Describe what this PR does

Previously, temporary clone images (-temp) and snapshot backing images
had their features hard-coded to only layering and deep-flatten.

Inherit the image features from the parent volume (configured via
StorageClass imageFeatures) while ensuring layering and deep-flatten
are always enabled, as they are required for the flatten operation.

Fixes: #4936

Checklist:

  • Commit Message Formatting: Commit titles and messages follow. guidelines in the developer guide.
  • Reviewed the developer guide on Submitting a Pull Request
  • Pending release notes updated with breaking and/or notable changes for the next major release.
  • Documentation has been updated, if necessary.
  • Unit tests have been added, if necessary.
  • Integration tests have been added, if necessary.

Show available bot commands

These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:

  • /retest ci/centos/<job-name>: retest the <job-name> after unrelated
    failure (please report the failure too!)

This is an automatic backport of pull request #6205 done by [Mergify](https://mergify.com).

@mergify mergify bot added the conflicts label Apr 1, 2026
@mergify
Copy link
Copy Markdown
Contributor Author

mergify bot commented Apr 1, 2026

Cherry-pick of 0e81334 has failed:

On branch mergify/bp/release-v3.16/pr-6205
Your branch is ahead of 'origin/release-v3.16' by 1 commit.
  (use "git push" to publish your local commits)

You are currently cherry-picking commit 0e81334a.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   e2e/rbd.go
	both modified:   e2e/rbd_helper.go

no changes added to commit (use "git add" and/or "git commit -a")

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@mergify mergify bot added the component/rbd Issues related to RBD label Apr 1, 2026
@iPraveenParihar
Copy link
Copy Markdown
Contributor

conflicts in e2e because of By() changed to It(). @Rakshith-R , do you think we might need to backport #6136?
Or I'll just convert the It() to By() in previous release?

@nixpanic
Copy link
Copy Markdown
Member

nixpanic commented Apr 2, 2026

conflicts in e2e because of By() changed to It(). @Rakshith-R , do you think we might need to backport #6136? Or I'll just convert the It() to By() in previous release?

Please just use By() instead, don't backport the complete e2e change (it also may have additional tests not suitable for release-3.16).

@iPraveenParihar iPraveenParihar force-pushed the mergify/bp/release-v3.16/pr-6205 branch from 97a48d0 to 64ce679 Compare April 2, 2026 15:33
@nixpanic nixpanic requested a review from a team April 2, 2026 16:14
@nixpanic nixpanic added ok-to-test Label to trigger E2E tests and removed conflicts labels Apr 2, 2026
@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.33

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.32

@mergify mergify bot added the ci/in-progress/e2e This label acts like a guard and prevents Mergify from adding the `ok-to-test` label again. label Apr 2, 2026
@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/upgrade-tests-cephfs

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.33

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.32

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/upgrade-tests-rbd

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.33

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/k8s-e2e-external-storage/1.34

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.32

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e-helm/k8s-1.34

@ceph-csi-bot
Copy link
Copy Markdown
Collaborator

/test ci/centos/mini-e2e/k8s-1.34

@ceph-csi-bot ceph-csi-bot removed the ok-to-test Label to trigger E2E tests label Apr 2, 2026
@nixpanic
Copy link
Copy Markdown
Member

nixpanic commented Apr 3, 2026

@iPraveenParihar , feel free to approve this :)

@mergify
Copy link
Copy Markdown
Contributor Author

mergify bot commented Apr 3, 2026

Merge Queue Status

  • Entered queue2026-04-03 09:29 UTC · Rule: default
  • Checks started · in-place · dashboard
  • 🟠 Running checks
  • ⏳ Merge · ETA: 2026-04-03 09:29 UTC 🚀
Required conditions to merge
Required conditions to stay in the queue
  • any of [🔀 queue conditions]:
    • all of [📌 queue conditions of queue rule default]:
      • all of:
        • any of:
          • base=ci/centos
          • all of:
            • status-success=multi-arch-build
            • base!=ci/centos
            • status-success=codespell
            • status-success=go-test
            • status-success=golangci-lint
            • status-success=lint-extras
            • status-success=mod-check
            • status-success=uncommitted-code-check
            • any of:
              • status-success=commitlint
              • author=dependabot[bot]
        • any of:
          • all of:
            • label=ci/skip/e2e
            • base!=ci/centos
          • all of:
            • status-success=ci/centos/k8s-e2e-external-storage/1.32
            • status-success=ci/centos/k8s-e2e-external-storage/1.33
            • status-success=ci/centos/k8s-e2e-external-storage/1.34
            • status-success=ci/centos/mini-e2e-helm/k8s-1.32
            • status-success=ci/centos/mini-e2e-helm/k8s-1.33
            • status-success=ci/centos/mini-e2e-helm/k8s-1.34
            • status-success=ci/centos/mini-e2e/k8s-1.32
            • status-success=ci/centos/mini-e2e/k8s-1.33
            • status-success=ci/centos/mini-e2e/k8s-1.34
            • status-success=ci/centos/upgrade-tests-cephfs
            • status-success=ci/centos/upgrade-tests-rbd
            • base~=^(release-.+)$
          • all of:
            • base=release-v3.15
            • status-success=ci/centos/k8s-e2e-external-storage/1.31
            • status-success=ci/centos/k8s-e2e-external-storage/1.32
            • status-success=ci/centos/k8s-e2e-external-storage/1.33
            • status-success=ci/centos/mini-e2e-helm/k8s-1.31
            • status-success=ci/centos/mini-e2e-helm/k8s-1.32
            • status-success=ci/centos/mini-e2e-helm/k8s-1.33
            • status-success=ci/centos/mini-e2e/k8s-1.31
            • status-success=ci/centos/mini-e2e/k8s-1.32
            • status-success=ci/centos/mini-e2e/k8s-1.33
            • status-success=ci/centos/upgrade-tests-cephfs
            • status-success=ci/centos/upgrade-tests-rbd
          • all of:
            • base=devel
            • status-success=ci/centos/k8s-e2e-external-storage/1.33
            • status-success=ci/centos/k8s-e2e-external-storage/1.34
            • status-success=ci/centos/k8s-e2e-external-storage/1.35
            • status-success=ci/centos/mini-e2e-helm/k8s-1.33
            • status-success=ci/centos/mini-e2e-helm/k8s-1.34
            • status-success=ci/centos/mini-e2e-helm/k8s-1.35
            • status-success=ci/centos/mini-e2e/k8s-1.33
            • status-success=ci/centos/mini-e2e/k8s-1.34
            • status-success=ci/centos/mini-e2e/k8s-1.35
            • status-success=ci/centos/upgrade-tests-cephfs
            • status-success=ci/centos/upgrade-tests-rbd
          • all of:
            • base=ci/centos
            • status-success=ci/centos/jjb-validate
            • status-success=ci/centos/job-validation
        • #approved-reviews-by>=2
        • #changes-requested-reviews-by=0
        • approved-reviews-by=@ceph/ceph-csi-contributors
        • approved-reviews-by=@ceph/ceph-csi-maintainers
        • label!=DNM
        • status-success=DCO
      • #approved-reviews-by >= 1 [🛡 GitHub branch protection]
      • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • -closed [📌 queue requirement]
  • -conflict [📌 queue requirement]
  • -draft [📌 queue requirement]
  • any of [📌 queue -> configuration change requirements]:
    • -mergify-configuration-changed
    • check-success = Configuration changed

Previously, temporary clone images (-temp) and snapshot backing images
had their features hard-coded to only layering and deep-flatten.

Inherit the image features from the parent volume (configured via
StorageClass imageFeatures) while ensuring layering and deep-flatten
are always enabled, as they are required for the flatten operation.

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 28daf2e)
Add an e2e test that verifies the intermediate RBD images created
during snapshot and clone operations inherit StorageClass image
features. Specifically validates:
- csi-snap-* (snapshot backing image) inherits features from parent
- csi-vol-*-temp (temp clone image) inherits features from parent

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 0e81334)

# Conflicts:
#	e2e/rbd.go
#	e2e/rbd_helper.go
@ceph-csi-bot ceph-csi-bot force-pushed the mergify/bp/release-v3.16/pr-6205 branch from 64ce679 to 27f9c96 Compare April 3, 2026 09:29
@mergify mergify bot added the queued label Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci/in-progress/e2e This label acts like a guard and prevents Mergify from adding the `ok-to-test` label again. component/rbd Issues related to RBD queued

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants