forked from kubernetes-csi/external-resizer
-
Notifications
You must be signed in to change notification settings - Fork 8
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
Rebase 0.3.0 #5
Merged
openshift-merge-robot
merged 94 commits into
openshift:master
from
huffmanca:rebase-0.3.0
Oct 16, 2019
Merged
Rebase 0.3.0 #5
openshift-merge-robot
merged 94 commits into
openshift:master
from
huffmanca:rebase-0.3.0
Oct 16, 2019
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
In repos that have a test/e2e, that test suite should be run separately because it depends on a running cluster.
This is an unmodified copy of kubernetes/hack/verify-shellcheck.sh revision d5a3db003916b1d33b503ccd2e4897e094d8af77.
This runs "dep check" to verify that the vendor directory is up-to-date and meets expectations (= done with dep >= 0.5.0).
check vendor directory
In repos that have a test/e2e, that test suite should be run separately because it depends on a running cluster.
build.make: avoid unit-testing E2E test suite
These are the modifications that were necessary to call this outside of Kubernetes. The support for excluding files from checking gets removed to simplify the script. It shouldn't be needed, because linting can be enabled after fixing whatever scripts might fail the check.
By default this only tests the scripts inside the "release-tools" directory, which is useful when making experimental changes to them in a component that uses csi-release-tools. But a component can also enable checking for other directories.
This enables testing of other repos and of this repo itself inside Prow. Currently supported is unit testing ("make test") and E2E testing (either via a local test suite or the Kubernetes E2E test suite applied to the hostpath driver example deployment). The script passes shellcheck and uses Prow to verify that for future PRs.
verify shellcheck
The travis.yml is now the only place where the Go version for the component itself needs to be configured.
Using the same (recent) Go version for all Kubernetes versions can break for older versions when there are incompatible changes in Go. To avoid that, we use exactly the minimum version of Go required for each Kubernetes version. This is based on the assumption that this combination was tested successfully. When building the E2E suite from Kubernetes (the default) we do the same, but still allow building it from elsewhere. We allow the Go version to be empty when it doesn't matter.
While switching back and forth between release-1.13 and release-1.14 locally, there was the problem that the local kind image kept using the wrong kubelet binary despite rebuilding from source. The problem went away after cleaning the Bazel cache. Exact root cause unknown, but perhaps using unique tags and properly cleaning the repo helps. If not, then the unique tags at least will show what the problem is.
Instead of always using the latest E2E tests for all Kubernetes versions, the plan now is to use the tests that match the Kubernetes version. However, for 1.13 we have to make an exception because the suite for that version did not support the necessary --storage.testdriver parameter.
The temporary fork was merged, we can use the upstream repo again.
Prow testing
This ensures that also new, currently unknown alpha gates are enabled when testing against a future Kubernetes versions. For all currently known Kubernetes versions we just use the minimal set of alpha gates, which ensures that we don't miss any of them in our documentation.
"grep -w" treated "serial-alpha" as two words and therefore CSI_PROW_TESTS sometimes ran too many tests.
The previous logic failed for canary jobs, those also deploy a recent driver. Instead of guessing what driver gets installed based on job parameters, check what really runs in the cluster and base the decision on that. We only need to maintain this blacklist for 1.0.x until we replace it with 1.1.0, then this entire hostpath_supports_block can be removed.
When running only some tests, sometimes extra, unnecessarily work was done, like bringing up the cluster without alpha gates.
Not all environments have Docker. The simplifying assumption here is that if the Docker command is available, it's also usable.
When KinD fails in a Prow job, we need additional information to understand why it failed.
It turned out to not work. Instead of reverting the commit which introduced this, let's better document this explicitly.
prow enhancements
This was already meant to be done earlier in cda2fc5. While at it, extend the permanent TODO with guidance on future feature gates.
prow.sh: remove AllAlpha=all, part II
build.make: Replace 'return' to 'exit' to fix shellcheck error
This pulls in kubernetes-csi/csi-driver-host-path#37, which turned out to be necessary for pre-submit testing of the livenessprobe.
…ind-cluster Create 2-node kind cluster since topology support is added to hostpath
build windows binaries with .exe suffix
Update csi-release-tools
…ansion Enable hostpath expansion
Update the image and enable e2e runs
Signed-off-by: Grant Griffiths <grant@portworx.com>
…connloss Exit on CSI gRPC conn loss
Verify claimref associated with PVs before resizing
Add changelog for 0.3.0
Update README file
openshift-ci-robot
added
the
size/XXL
Denotes a PR that changes 1000+ lines, ignoring generated files.
label
Oct 15, 2019
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: gnufied, huffmanca 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 |
openshift-ci-robot
added
the
approved
Indicates a PR has been approved by an approver from all required OWNERS files.
label
Oct 16, 2019
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it:
Rebases to the v0.3.0 tag in the Kubernetes repo.
It also ensures that golang v1.12 is used for the Docker images.
@openshift/storage