-
Notifications
You must be signed in to change notification settings - Fork 159
Feature: Changes to support Hyperdisk Multi-Writer mode by moving to Beta APIs. #1919
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
Conversation
Added fixes for test key handling.
* Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks.
Fixing a linting issue.
* Removing alpha disk from tests. * Changes setup the test to run with hyperdisk extreme. * Updates the disk type back to balanced, as HDX doesn't support multi writer. * Moving over to m1 megamem as thats the only type of machine that can support all needed disk types. * Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks. * Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks. * Fixing some git oddness * Fixing some formatting. * More formatting fixes. * Hopefully last changes for formatting. * Fixing linting issue. * Cleaning up un-used / un-needed GetMultiWriter test function.
…ow just defaults to using the Beta API.
Hi @sjswerdlow. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. 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. |
/ok-to-test |
@@ -212,11 +212,6 @@ func (cloud *FakeCloudProvider) ValidateExistingDisk(ctx context.Context, resp * | |||
params.DiskType, respType[len(respType)-1]) | |||
} | |||
|
|||
// We are assuming here that a multiWriter disk could be used as non-multiWriter | |||
if multiWriter && !resp.GetMultiWriter() { |
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.
I think we need to keep this check, to validate that we aren't trying to use a non-multiwriter disk when we need a multiwriter one?
@@ -407,11 +395,6 @@ func (cloud *CloudProvider) ValidateExistingDisk(ctx context.Context, resp *Clou | |||
reqBytes, common.GbToBytes(resp.GetSizeGb()), limBytes) | |||
} | |||
|
|||
// We are assuming here that a multiWriter disk could be used as non-multiWriter |
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.
Ditto, we should keep the multiwriter check.
Hmm, this won't verify that a hyperdisk is multiwriter, however, since we aren't passing in the access mode. It looks like it's just called from the one place in pk/gce-pd-csi-driver/controller.go, so should be easy to add accessMode to the method (this makes it parallel to the insert disk call. Part of me thinks we should push this detail of how multiwriter is declared down into cloud disk, but we can defer that for now, HdHA might clarify the question).
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.
HdHA PR has already been merged by the way: #1915
/test pull-gcp-compute-persistent-disk-csi-driver-kubernetes-integration |
/lgtm Thanks for working though this! |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mattcary, sjswerdlow The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest |
1 similar comment
/retest |
/retest-required |
2 similar comments
/retest-required |
/retest-required |
/retest |
/retest-required |
@sjswerdlow: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. 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. |
The integration test errors are known problems with the snapshot tests. Force-merging. |
/cherry-pick release-1.16 |
@mattcary: #1919 failed to apply on top of branch "release-1.16":
In response to this:
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. |
Upstream PR: kubernetes-sigs#1919 Added fixes for test key handling. Multiwriter Test Update (openshift#3) * Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks. Update parameters.go Fixing a linting issue. Karkunpavan (openshift#4) * Removing alpha disk from tests. * Changes setup the test to run with hyperdisk extreme. * Updates the disk type back to balanced, as HDX doesn't support multi writer. * Moving over to m1 megamem as thats the only type of machine that can support all needed disk types. * Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks. * Changes update the tests to use two contexts, one for multiwriter and one for the existing tests. This was deemed necessary as only some disks can support multi-writer, and only some VM shapes can support said disks. * Fixing some git oddness * Fixing some formatting. * More formatting fixes. * Hopefully last changes for formatting. * Fixing linting issue. * Cleaning up un-used / un-needed GetMultiWriter test function. Completley removing the multiwriter check from fake-gce. Changes remove the API version concept from GetDisk and InsertDisk, now just defaults to using the Beta API. Cleaning up un-used variables. pkg/gce-cloud-provider/compute/fake-gce.go Addressing comments around GetMultiWriter checks. Removing multi-writer as a disk paramter. Fixing rebasing issues. Merge branch 'master' into followup Merge branch 'kubernetes-sigs:master' into hd-mw Merge branch 'kubernetes-sigs:master' into hd-mw Merge pull request openshift#1 from karkunpavan/karkunpavan Added fixes for test key handling.
/cherry-pick release-1.16 |
@tonyzhc: #1919 failed to apply on top of branch "release-1.16":
In response to this:
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. |
What type of PR is this?
What this PR does / why we need it:
Hyper disk multi-writer support is now in compute/v1 but the persistent disk csi driver still calls v0.beta which leads a error while creating a hyperdisk with multi-writer mode.
Error:
Which issue(s) this PR fixes:
Fixes: #1863
Special notes for your reviewer:
Implementation of Proposal V2 from Matt. Changes done on top of #1901.
Does this PR introduce a user-facing change?: