-
Notifications
You must be signed in to change notification settings - Fork 332
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
Add and enable sidecar e2e test to enable volume mode conversion #832
Conversation
/assign @pohly |
There's no need to review and merge this change now. Let's do that together with the E2E test that uses it. You can keep it in separate commits to keep each change small. |
44a7093
to
c58f24f
Compare
c58f24f
to
9ca6141
Compare
9ca6141
to
ce0ae18
Compare
@pohly added the e2e test and related changes to a new commit. There are a lot of vendor changes that you can ignore. |
All of the |
6d69023
to
4a29e25
Compare
@pohly thanks, I managed to run it. However the test is currently being skipped
I guess https://github.com/kubernetes-csi/csi-driver-host-path/pull/379/files and kubernetes-csi/external-snapshotter#790 need to be merged (and a new release cut?) before they can actually be tested? |
You could define a pull-kubernetes-csi-external-provisioner-canary-on-kubernetes-master job (and similar for other repos) which overrides the image versions with the canary images. Then this change here could be tested with Such a job must not run by default and must not be release blocking because due to its nature (involving unstable images) there's no guarantee that it passes. |
@pohly thank you for the guidance, the whole system is a LOT to process! Something like this? kubernetes/test-infra#28307 |
/test pull-kubernetes-csi-external-provisioner-canary |
Looks good to me now. @pohly Are you good with this PR? |
/test pull-kubernetes-csi-external-provisioner-canary |
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.
.prow.sh and e2e.go look good to me, with one minor nit.
The commits should get cleaned up before merging. A separate commit for the dependency update would be good and some useful commit messages.
b86bf8a
to
d114614
Compare
@pohly I couldn't separate the dependency updates from the e2e tests as they're dependent on each other. Both are included in the second commit in this PR. I've squashed the rest of the commits that address the PR reviews. |
@RaunakShah Can you rebase? |
d114614
to
d5178ca
Compare
/test pull-kubernetes-csi-external-provisioner-canary |
d5178ca
to
4fc9f8f
Compare
in e2e tests running in provisioner repo
4fc9f8f
to
c2ec2f7
Compare
/test pull-kubernetes-csi-external-provisioner-canary |
…eature - Upgrade go.mod dependencies and vendor files to import kubernetes e2e test framework
c2ec2f7
to
f10b6a4
Compare
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: RaunakShah, xing-yang 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 |
It's shown here: https://testgrid.k8s.io/sig-storage-csi-external-provisioner#canary |
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR does the following:
e59effa - updates the
.prow.sh
file inexternal-provisioner
to enableprevent-volume-mode-conversion
in thesnapshot-controller
created by prow jobs. This is part of a wider effort to run e2e tests in individual sidecar repos instead of within the kubernetes repo.Depends on kubernetes-csi/external-snapshotter#790 and kubernetes-csi/csi-driver-host-path#379.
Also removes code from
.prow.sh
since the prow jobs have moved on from k8s 1.19.5af270d - Introduces an e2e test in external provisioner to test volume mode conversion feature. This includes changes to
go.mod
file to importkubernetes/test
packages as well as introducing atest
folder that runs the tests. The framework for this test has been taken from https://github.com/kubernetes/kubernetes/tree/master/test/e2e/frameworkTesting
On prow job:
/test pull-kubernetes-csi-external-provisioner-canary
gives the following result - https://prow.k8s.io/log?container=test&id=1615616050764713984&job=pull-kubernetes-csi-external-provisioner-canaryRunning the test locally gives the following results:
Note the flags applied above:
VOLUME_MODE_CONVERSION_TESTS=true
to call the updated functioninstall_snapshot_controller()
in external-provisioner repoCSI_PROW_DRIVER_REPO="https://github.com/RaunakShah/csi-driver-host-path"
to run the tests with changes in Provide option to enable volume mode conversion flag to HostPath driver deployment script csi-driver-host-path#379The tests run successfully:
The volume mode conversion flag is successfully enabled in snapshot-controller and external-provisioner:
The custom
install_snapshot_controller()
function is called:Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Majority of the changes in this PR are in the
vendor
directory. The following files need to be reviewed:.prow.sh
go.mod
go.sum
test/
Does this PR introduce a user-facing change?: