Skip to content
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

prow enhancements #13

Merged
merged 7 commits into from
Apr 9, 2019
Merged

prow enhancements #13

merged 7 commits into from
Apr 9, 2019

Conversation

pohly
Copy link
Contributor

@pohly pohly commented Apr 8, 2019

This is related to kubernetes/test-infra#12088 but both can be merged independently.

/assign @msau42

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: pohly

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. approved Indicates a PR has been approved by an approver from all required OWNERS files. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 8, 2019
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/test pull-sig-storage-csi-lib-utils

@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/test pull-sig-storage-csi-release-tools

pohly added 2 commits April 8, 2019 13:01
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.
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/test pull-sig-storage-csi-release-tools

@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/hold

The version check is not quite right yet.

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 8, 2019
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.
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 8, 2019
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

KinD is failing in Prow for the "on-master" jobs (and only for those). Works for me locally. I would prefer to merge this PR as it is right now and investigate that failure separately, because then we can also merge some of the other PRs which aren't affected.

@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/hold

I'm starting to think that AllAlpha=true is the culprit. If so, one commit in this PR needs to be removed. Let's hold, I'm looking into that right now.

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 8, 2019
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

/hold cancel

I've removed the AllAlpha=true and instead added a warning to not use it. kubelet accepted it, but then failed to run correctly.

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 8, 2019
@pohly
Copy link
Contributor Author

pohly commented Apr 8, 2019

prow.sh Outdated
@@ -846,102 +855,99 @@ main () {
run_with_go "${CSI_PROW_GO_VERSION_BUILD}" make container || die "'make container' failed"
fi

install_kind || die "installing kind failed"
start_cluster || die "starting the cluster failed"
if test_enabled "sanity" || test_enabled "parallel" || test_enabled "serial" || test_enabled "serial-alpha" || test_enabled "parallel-alpha"; then
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about having a couple of variables that can serve as whitelists of jobs that:

  • require non-alpha cluster
  • require alpha cluster

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You mean functions like job_needs_cluster, job_needs_alpha_cluster, job_needs_non_alpha_cluster instead of spelling that out via test_enabled? Yes, that would be a bit cleaner, albeit not necessarily shorter overall. I'll change it.

prow.sh Outdated
# Careful with AllAlpha=true: enabling all alpha features turned out
# to be problematic (kubelet died), so let's better list alpha gates
# explicitly.
configvar CSI_PROW_E2E_ALPHA_GATES_LATEST 'VolumeSnapshotDataSource=true' "alpha feature gates for latest Kubernetes"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ExpandCSIVolumes is also an alpha feature for 1.14.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack.

pohly added 4 commits April 9, 2019 10:48
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.
@pohly
Copy link
Contributor Author

pohly commented Apr 9, 2019

Pushed revised commits:

  • cda2fc5: now with ExpandCSIVolumes
  • 546d550: capture logs after cluster failure (suggestion from Ben)
  • aa45a1c: avoids long list of test_enabled conditions

@pohly
Copy link
Contributor Author

pohly commented Apr 9, 2019

/test pull-sig-storage-csi-release-tools

@pohly
Copy link
Contributor Author

pohly commented Apr 9, 2019

All tests in the individual PRs passed, with just the known issue that hostpath v1.0.1 fails some csi-sanity tests. This will be fixed by updating the 1.13 deployment with hostpath v1.1.0.

@msau42
Copy link
Collaborator

msau42 commented Apr 9, 2019

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 9, 2019
@k8s-ci-robot k8s-ci-robot merged commit 6617773 into kubernetes-csi:master Apr 9, 2019
jsafrane pushed a commit to jsafrane/csi-release-tools that referenced this pull request May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants