-
Notifications
You must be signed in to change notification settings - Fork 159
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 ControllerModifyVolume E2E tests #1826
Conversation
Hi @travisyx. 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 |
test/run-e2e.sh
Outdated
@@ -5,4 +5,4 @@ set -x | |||
|
|||
readonly PKGDIR=sigs.k8s.io/gcp-compute-persistent-disk-csi-driver | |||
|
|||
go test --timeout 30m --v "${PKGDIR}/test/e2e/tests" --run-in-prow=true --delete-instances=true --logtostderr $@ | |||
go test --timeout 45m --v "${PKGDIR}/test/e2e/tests" --run-in-prow=true --delete-instances=true --logtostderr $@ |
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.
previously these tests were taking 27 min ish to run, and now they are taking 44 min. Why do these tests make the tests run so much longer?
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.
The changes from ControllerModifyVolume take 5-6 minutes to be reflected. I added tests for both IOPS/throughput, just IOPS, and just throughput, causing the tests to take longer
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.
Do these e2e tests not run in parallel?
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.
No, they don't run in parallel by default
@@ -1549,6 +1560,84 @@ var _ = Describe("GCE PD CSI Driver", func() { | |||
Entry("with missing multi-zone label", multiZoneTestConfig{diskType: standardDiskType, readOnly: true, hasMultiZoneLabel: false, wantErrSubstring: "points to disk that is missing label \"goog-gke-multi-zone\""}), | |||
Entry("with unsupported disk-type pd-extreme", multiZoneTestConfig{diskType: extremeDiskType, readOnly: true, hasMultiZoneLabel: true, wantErrSubstring: "points to disk with unsupported disk type"}), | |||
) | |||
|
|||
DescribeTable("Should update metadata when providing valid metadata", |
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.
If we cherry pick PRs back to previous release branches (before your change), is there a way to skip these test cases ? Otherwise I think these will fail against PRs merged to old release branches. In the test log, I see
Ran 43 of 51 Specs in 1471.037 seconds
SUCCESS! -- 43 Passed | 0 Failed | 2 Pending | 6 Skipped
So I think there is a way to skip somewhere
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 changed the table to be pending, so this should skip for older versions. Is this sufficient?
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.
How does that make it skip for older versions? I see your tests now are pending even for this PR. I'm assuming that means they didn't run at all. What are the tests we are skipping now, and can we make those be skipped based on release branch?
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.
The other tests that were skipped are the tests in multi_zone_e2e_test.go. They get skipped if an environment variable isn't set. It doesn't seem like doing the same for these tests makes sense as they just wouldn't run on the tests for this PR. I set the tests to read the latest tag information and base the test skip on if the version is before v1.15.0.
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.
Actually, based on a past new feature / new e2e test (70148a9#diff-2547c5a5595d73ed4720c414c96d15d919e53abf7441f91f1b2c7250196a2606) I don't think this is an issue I guess?
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.
So basing test skips off an environment variable is fine? I guess that would make sense especially given that the tests were verified to be passing from an earlier PR run
@travisyx: 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. |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: amacaskill, travisyx 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 |
/cherry-pick release-1.15 |
@travisyx: only kubernetes-sigs org members may request cherry picks. If you are already part of the org, make sure to change your membership to public. Otherwise you can still do the cherry-pick manually. 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. |
…ModifyVolume E2E tests kubernetes-sigs#1836: Create documentation for ControllerModifyVolume and controller default kubernetes-sigs#1838: Enable VolumeAttributesClass feature gate for CI runs kubernetes-sigs#1841: Update logic to use SI for VACs"
…ick-of-#1826-#1836-#1838-#1841-upstream-release-1.15 Revert "Automated cherry pick of #1826: Add ControllerModifyVolume E2E tests#1836: Create documentation for ControllerModifyVolume and controller default#1838: Enable VolumeAttributesClass feature gate for CI runs#1841: Update logic to use SI for VACs"
What type of PR is this?
/kind cleanup
What this PR does / why we need it:
This PR adds ControllerModifyVolume E2E tests. This allows us to directly test the various APIs to check for any breaking changes in the future with the clients used.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?: