-
Notifications
You must be signed in to change notification settings - Fork 807
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
Implement Windows NodePublish/Unpublish #823
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: wongma7 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 |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
turns out to be issue in csi-proxy, fix here: kubernetes-csi/csi-proxy#126 |
5d2bcf4
to
b27a7b9
Compare
@AndyXiangLi PTAL We have to settle for my manual testing because there is no EKS windows AMI with csi-proxy.exe (with the necessary patches) installed meaning it's IMO too difficult to write an automated test. (somethingn eeds to apply the patches, build the binary, install the service into the node ami, all as prerequisite for the test, as described in my example README) However we will need to have CI exercising automatic tests before kubernetes 1.23-ish? to make sure the GA driver + windows + GA migration all works together. |
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 agree that we should have CI ready to cover windows use case by 1.23.
To set the expectation right, should we update the readme and mention resizing is not supported on windows?
I added one more sentence to the windows example README: "Only basic read/write (mount/unmount and attach/detach) functionality has been tested, other features like resize don't work yet." I don't want to mention windows support in top-level README yet because it's not possible without applying patches to csi-proxy.exe, as mentioned in pre-requisites section of windows example README |
/hold |
/hold cancel |
/hold need to retest again after kubernetes-csi/csi-proxy#144 gets fixed |
/hold cancel all the required changes to csi-proxy have merged and I tested the PR with them |
/test pull-aws-ebs-csi-driver-external-test |
return mountutils.PathExists(path) | ||
} | ||
|
||
//TODO: use common util from vendor kubernetes/mount-util |
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.
What is the difference in terms of function between what you have and the common util?
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.
it's copied, but IIRC it existed in kubernetes/kubernetes not kubernetes/mount-util at the time so xiangli and I agreed to copy and leave as TODO , instead of depending on kubernetes/kubernetes which is generally bad idea, see
"
TODO: Upstream is planning on move the common resize code to kubernetes/mount-util, #99223, we should use the resize function from there instead of maintaining our own once the changes are available"
#753
/lgtm |
Is this a bug fix or adding new feature? /feature
What is this PR about? / Why do we need it? In-tree EBS driver supports windows, so too must CSI in case an in-tree EBS volume gets migrated to CSI
I will add build/push job to CI in a separate PR. Since windows images are big, don't want to prematurely upload stuff to registry.
NOTE: this requires a not-yet-released version of csi-proxy with changes from
I will detail this in README so that my test results are reproducible.
TODO:
What testing is done?
Windows mount/unmount works, data persists.
I will let CI test that my refactoring has not broken Linux.
Manual test:
Basic/minimal e2e test: