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

Drop unnecessary redirection of ci/latest.txt to ci-cross/latest.txt for kubeadm's kubernetes version flag #63504

Conversation

dims
Copy link
Member

@dims dims commented May 7, 2018

What this PR does / why we need it:

For 1.8,1.9,1.10 branches, we need to load the latest
version from ci/latest*.txt.

For master, we need to load the version number from
ci-cross/latest.txt

try these to verify:

gsutil cat gs://kubernetes-release-dev/ci/latest-1.9.txt
gsutil cat gs://kubernetes-release-dev/ci-cross/latest.txt

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #61483

Special notes for your reviewer:

Release note:

Kubernetes version command line parameter in kubeadm has been updated to drop an unnecessary redirection from ci/latest.txt to ci-cross/latest.txt. Users should know exactly where the builds are stored on Google Cloud storage buckets from now on. For example for 1.9 and 1.10, users can specify ci/latest-1.9 and ci/latest-1.10 as the CI build jobs what build images correctly updates those. The CI jobs for master update the ci-cross/latest location, so if you are looking for latest master builds, then the correct parameter to use would be ci-cross/latest.

@k8s-ci-robot k8s-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. size/S Denotes a PR that changes 10-29 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels May 7, 2018
@k8s-ci-robot k8s-ci-robot added area/kubeadm sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. labels May 7, 2018
@dims
Copy link
Member Author

dims commented May 7, 2018

cc @ixdy

@dims
Copy link
Member Author

dims commented May 7, 2018

/test pull-kubernetes-integration

@ixdy
Copy link
Member

ixdy commented May 7, 2018

Nothing is configured to try to use latest-1.11 yet, right?

@dims
Copy link
Member Author

dims commented May 7, 2018

@ixdy correct. AFAIK

@dims
Copy link
Member Author

dims commented May 7, 2018

/test pull-kubernetes-e2e-gce

@dims
Copy link
Member Author

dims commented May 9, 2018

/milestone v1.11

Copy link
Member

@timothysc timothysc left a comment

Choose a reason for hiding this comment

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

/approve
/lgtm

@k8s-ci-robot k8s-ci-robot added lgtm "Looks good to me", indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels May 9, 2018
@timothysc timothysc added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. kind/bug Categorizes issue or PR as related to a bug. labels May 9, 2018
@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-none Denotes a PR that doesn't merit a release note. labels May 9, 2018
@kad
Copy link
Member

kad commented May 9, 2018

@ixdy can we get rid of this inconsistency with ci and ci-cross. This piece of code with special handling about ci-cross was introduced originally as workaround for inconsistency, but I fear that with time we are just increasing amount of hacks for that inconsistencies.

@@ -123,7 +123,14 @@ func splitVersion(version string) (string, string, error) {
switch {
case strings.HasPrefix(subs[0][2], "ci"):
// Special case. CI images populated only by ci-cross area
urlSuffix = "ci-cross"
if subs[0][3] == "latest" {
Copy link
Member

Choose a reason for hiding this comment

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

this will break ci/latest-1 and ci/latest-1.11 (versions in master branch). it will now be pointing to images that doesn't exists in registry.

Copy link
Member

Choose a reason for hiding this comment

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

Does anyone use ci/latest-1.11 or just latest-1.11 ?

I don't know of any tooling that uses ci/latest other then the test infra.

Copy link
Member Author

@dims dims May 9, 2018

Choose a reason for hiding this comment

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

@kad you mentioned on slack

I still suggest to simplify it to `urlSuffix = subs[0][2]` in all cases where bucket starts with “ci” and update in test-infra config.json to use ci-cross/latest where it is applicable explicitly.

So i'll do revise the PR with your suggestion

Copy link
Member

Choose a reason for hiding this comment

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

@timothysc latest-1.11 is usable for official images, v1.11.0-alpha.2 at the moment. ci/latest-1.11 points to tip of the branch builds, and images for this build are not available at the moment until corresponding ci-cross build finishes. Yes, primary user is test-infra, and there it will be good to have explicit pointer which build is used for testing (cross vs. standard build).

@timothysc timothysc added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 9, 2018
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 9, 2018
@dims dims force-pushed the improve-where-we-load-build-versions-for-kubeadm-upgrade-jobs branch from c82fbfa to 2ac8989 Compare May 9, 2018 16:02
@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels May 9, 2018
@@ -180,8 +180,10 @@ func TestSplitVersion(t *testing.T) {
{"release/v1.7.0", "https://dl.k8s.io/release", "v1.7.0", true},
{"release/latest-1.7", "https://dl.k8s.io/release", "latest-1.7", true},
// CI builds area, lookup actual builds at ci-cross/*.txt
{"ci/latest", "https://dl.k8s.io/ci-cross", "latest", true},
Copy link
Member

Choose a reason for hiding this comment

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

this test will fail, if I am not mistaken.

We should stop special casing "ci-cross" and just use the
configuration in test-infra to dictate where we pick up
the builds from.

For 1.8,1.9,1.10 branches, we need to load the latest
version from ci/latest*.txt.

For master, 1.11 etc, we need to load from ci-cross/latest*.txt.

We need to update test-infra configs if things fail.

try these to verify:
```
gsutil cat gs://kubernetes-release-dev/ci/latest-1.9.txt
gsutil cat gs://kubernetes-release-dev/ci-cross/latest.txt
```
@dims dims force-pushed the improve-where-we-load-build-versions-for-kubeadm-upgrade-jobs branch from 2ac8989 to ff26e57 Compare May 9, 2018 16:12
@kad
Copy link
Member

kad commented May 9, 2018

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label May 9, 2018
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dims, kad, timothysc

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

@timothysc timothysc added status/approved-for-milestone and removed do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. milestone/needs-approval labels May 9, 2018
@k8s-github-robot
Copy link

[MILESTONENOTIFIER] Milestone Pull Request: Up-to-date for process

@dims @kad @timothysc

Pull Request Labels
  • sig/cluster-lifecycle: Pull Request will be escalated to these SIGs if needed.
  • priority/important-soon: Escalate to the pull request owners and SIG owner; move out of milestone after several unsuccessful escalation attempts.
  • kind/bug: Fixes a bug discovered during the current release.
Help

@k8s-github-robot
Copy link

Automatic merge from submit-queue (batch tested with PRs 62850, 63504). If you want to cherry-pick this change to another branch, please follow the instructions here.

@k8s-github-robot k8s-github-robot merged commit c94efce into kubernetes:master May 9, 2018
k8s-github-robot pushed a commit that referenced this pull request May 9, 2018
…pstream-release-1.10

Automatic merge from submit-queue.

Automated cherry pick of #63504: Improve where we load builds from for kubeadm upgrade jobs

Cherry pick of #63504 on release-1.10.

#63504: Improve where we load builds from for kubeadm upgrade jobs

```release-note
Fixed where we get latest builds for stable branches
```
k8s-github-robot pushed a commit that referenced this pull request May 10, 2018
…pstream-release-1.9

Automatic merge from submit-queue.

Automated cherry pick of #63504: Improve where we load builds from for kubeadm upgrade jobs

Cherry pick of #63504 on release-1.9.

#63504: Improve where we load builds from for kubeadm upgrade jobs

```release-note
Fixed where we get latest builds for stable branches
```
@luxas
Copy link
Member

luxas commented May 11, 2018

@dims Can you please write a more descriptive title and release note?
This breaks all folks that have been doing ci/latest, regardless of platform...

@dims dims changed the title Improve where we load builds from for kubeadm upgrade jobs Drop unnecessary redirection of ci/latest.txt to ci-cross/latest.txt for kubeadm's kubernetes version flag May 11, 2018
@dims
Copy link
Member Author

dims commented May 11, 2018

@luxas updated. if you have a suggestion to make it even better, please let me know.

@luxas
Copy link
Member

luxas commented May 11, 2018

@dims Thanks, that's very descriptive 👍

@shawnhankim
Copy link

Is this only for Google Cloud? I was wondering whether this works for AWS and other cloud as well.

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. area/kubeadm cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/bug Categorizes issue or PR as related to a bug. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[job failed][1.10] ci-kubernetes-e2e-kubeadm-gce-1-9-on-1-10
8 participants