-
Notifications
You must be signed in to change notification settings - Fork 2
fix(vd): respect user-specified storage class when restoring from snapshot #1417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Daniil Loktev <[email protected]>
Workflow has started. The target step completed with status: failure. |
Workflow has started. The target step completed with status: failure. |
Workflow has started. The target step completed with status: success. |
Signed-off-by: Daniil Loktev <[email protected]>
Workflow has started. The target step completed with status: failure. |
Workflow has started. The target step completed with status: failure. |
Workflow has started. The target step completed with status: success. |
originalSCName = vs.Annotations[annotations.AnnStorageClassNameDeprecated] | ||
} | ||
|
||
if targetSCName == originalSCName { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this statement be a problem if the target storage class has a different provisioner than the original?
For example, a volume snapshot is created with the original storage class, but after snapshotting, the original storage class is replaced by another storage class with the same name but a different provisioner.
Description
Fix the VirtualDisk controller to respect user-specified storageClassName when creating disks from VirtualDiskSnapshot. Previously, the controller was always using the storage class from the original disk (stored in VolumeSnapshot annotations), completely ignoring the user-specified value in
spec.persistentVolumeClaim.storageClassName
. Also add error message when user tries to perform cross-provider restore.Why do we need it, and what problem does it solve?
When users tried to restore a VirtualDisk from a snapshot with a different storage class, the parameter
spec.persistentVolumeClaim.storageClassName
was silently ignored. The restored disk would always use the same storage class as the original disk.What is the expected result?
Checklist
Changelog entries