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

Create automatic release branch fast forward job #2386

Closed
7 tasks done
saschagrunert opened this issue Jan 13, 2022 · 7 comments · Fixed by #2389 or #2390
Closed
7 tasks done

Create automatic release branch fast forward job #2386

saschagrunert opened this issue Jan 13, 2022 · 7 comments · Fixed by #2389 or #2390
Assignees
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/release Categorizes an issue or PR as relevant to SIG Release.
Milestone

Comments

@saschagrunert
Copy link
Member

saschagrunert commented Jan 13, 2022

As discussed in kubernetes/sig-release#1794, there is a gap between the content of the k/k release-* branch and master when we cut the RC on test freeze, because:

  • PRs in the milestone may not have been merged yet into the master, because they're in the prow test queue
  • PRs get the latest milestone applied after the RC creation

To streamline the process of the latest release branch, I now propose to automate the branch fast forward until we cut the final release. This has to be communicated and documented clearly to all contributors before the automation goes live. That said, we have to:

For now everything should run in mock mode, meaning that no modifications to the main repository will be done until we have communicated the change accordingly.


Testgrid: https://testgrid.k8s.io/sig-release-releng-blocking#git-repo-kubernetes-fast-forward

@saschagrunert saschagrunert added kind/feature Categorizes issue or PR as related to a new feature. sig/release Categorizes an issue or PR as relevant to SIG Release. area/release-eng Issues or PRs related to the Release Engineering subproject labels Jan 13, 2022
@saschagrunert saschagrunert added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. and removed needs-priority labels Jan 13, 2022
@saschagrunert saschagrunert self-assigned this Jan 13, 2022
@saschagrunert
Copy link
Member Author

cc @kubernetes/sig-architecture @kubernetes/sig-testing

@cpanato
Copy link
Member

cpanato commented Jan 13, 2022

i like this approach and i think that will be good for us

@puerco
Copy link
Member

puerco commented Jan 13, 2022

+1 I think this is the best scenario.

From our side, I preferred the idea of reopening master instantly after branch creation, but @liggitt made an excellent point here against reopening immediatly.

Cherry picks have been chaotic, especially the last two releases. Although we did a poor job communicating the change back in 1.19, I feel they are an unnecessary burden on humans and I think efforts should go into a better system to apply the milestones more carefully while the branch is frozen.

saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release that referenced this issue Jan 14, 2022
Adding unit tests before changing the logic.

Refers to kubernetes#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
saschagrunert added a commit to saschagrunert/release-sdk that referenced this issue Jan 14, 2022
We now add two API methods to the `git` package, which will be used for
the automatic fast forward of release branches.

Refers to kubernetes/release#2386

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
@saschagrunert saschagrunert added this to the v1.24 milestone Jan 14, 2022
This was linked to pull requests Jan 14, 2022
@saschagrunert saschagrunert reopened this Jan 14, 2022
@saschagrunert saschagrunert reopened this Jan 14, 2022
@saschagrunert
Copy link
Member Author

Only the integration into prow is missing now, see kubernetes/test-infra#24901

ameukam added a commit to ameukam/test-infra that referenced this issue Feb 7, 2022
Related:
 - kubernetes/release#2386

Followup of:
 - kubernetes#24901

The test `TestK8sInfraTrusted` only allow postsubmits and periodics
running on `k8s-infra-prow-build-trusted` cluster to be located in path
`kubernetes/sig-k8s-infra/trusted`.

Signed-off-by: Arnaud Meukam <ameukam@gmail.com>
ameukam added a commit to ameukam/test-infra that referenced this issue Feb 7, 2022
Related:
 - kubernetes/release#2386

Followup of:
 - kubernetes#24901

The test `TestK8sInfraTrusted` only allow postsubmits and periodics
running on `k8s-infra-prow-build-trusted` cluster to be located in path
`kubernetes/sig-k8s-infra/trusted`.

Signed-off-by: Arnaud Meukam <ameukam@gmail.com>
ameukam added a commit to ameukam/k8s.io that referenced this issue Feb 9, 2022
Related:
  - kubernetes/release#2386

Followup of:
  - kubernetes#3372

Fix the project used to get the Github token for git auto fast-forward
for kubernetes/kubernetes repo.

Signed-off-by: Arnaud Meukam <ameukam@gmail.com>
@saschagrunert
Copy link
Member Author

Testgrid is green now: https://testgrid.k8s.io/sig-release-releng-informing#git-repo-kubernetes-fast-forward

@saschagrunert
Copy link
Member Author

@saschagrunert
Copy link
Member Author

Sent a note to k-dev: https://groups.google.com/a/kubernetes.io/g/dev/c/qbHPJjUF3s8/m/6tjttkfHAAAJ

Everything works so far, we can consider this one as finished. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
4 participants