Skip to content

Create and delete support for block Metro volume#344

Merged
santhoshatdell merged 7 commits into
mainfrom
configure-metro-volume
Sep 13, 2024
Merged

Create and delete support for block Metro volume#344
santhoshatdell merged 7 commits into
mainfrom
configure-metro-volume

Conversation

@santhoshatdell

@santhoshatdell santhoshatdell commented Sep 12, 2024

Copy link
Copy Markdown
Contributor

Description

  • Create and delete support for block Metro volume. This feature is only implemented at the driver level like PowerMax Metro, without the involvement of replication module.
  • Two backend volumes get created for single PV upon replication request specified in Storage class. If the ReclaimPolicy is 'Retain', both backend volumes along with PV are retained. If it is 'Delete', all are deleted.
  • Updates to PV's volumeHandle to contain both backend volumes ID will be in next PR.

GitHub Issues

List the GitHub issues impacted by this PR:

GitHub Issue #
https://github.com/dell/csm/issues/1443

Checklist:

  • I have performed a self-review of my own code to ensure there are no formatting, vetting, linting, or security issues
  • I have verified that new and existing unit tests pass locally with my changes
  • I have not allowed coverage numbers to degenerate (controller pkg 42.0% to 42.3%. Luke's PR will include changes to report better code coverage number)
  • I have maintained at least 90% code coverage
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have added tests that prove my fix is effective or that my feature works
  • Backward compatibility is not broken

How Has This Been Tested?

  • Tested that Metro PV is created and then deleted successfully. Remote backed volume is also created and deleted on the remote array as subsequent calls are made on source PV. (Logs are added to the ticket 23538)
  • Tested that configure metro call is idempotent, also tested the failure scenarios as added in the code.
  • Added new unit tests.
  • Verified that non-metro PV creation and deletion continues to work. Updated tests/simple/simple.yaml to reflect CSM doc.

@santhoshatdell

santhoshatdell commented Sep 12, 2024

Copy link
Copy Markdown
Contributor Author

It looks GitHub checks are failing due to go 1.22 usage in common-github-actions (I'll try to update it there - PR), but please review the code changes.

Comment thread pkg/controller/controller.go
Comment thread pkg/controller/controller.go
@santhoshatdell santhoshatdell merged commit 04ec15d into main Sep 13, 2024
@santhoshatdell santhoshatdell deleted the configure-metro-volume branch September 13, 2024 19:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants