-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
Adjust the releases process documentation. #10727
Adjust the releases process documentation. #10727
Conversation
RELEASE.md
Outdated
1. Create the release note with [Kubernetes Release Notes Generator](https://github.com/kubernetes/release/blob/master/cmd/release-notes/README.md). See the following `Release note creation` section for the details. | ||
1. An approver creates [new release in GitHub](https://github.com/kubernetes-sigs/kubespray/releases/new) using a version and tag name like `vX.Y.Z` and attaching the release notes | ||
1. (Only for major releases) An approver creates a release branch in the form `release-X.Y` | ||
1. (Only for major releases) On the `master` branch: bump the version in `galaxy.yml` to the next expected major release (X.y.0 with y = Y + 1), commit and push. |
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.
HI @VannTen
The galaxy.yml
should be changed just before
1. An approver creates [new release in GitHub](https://github.com/kubernetes-sigs/kubespray/releases/new) using a version and tag name like `vX.Y.Z` and attaching the release notes
So that the galaxy.yml
is the same as with tag vX.Y.Z.
And it change be changed to :
1. Ensure the version in `galaxy.yml` is the next expected major release (X.y.0 with y = Y + 1); if not, please bump it.
Thanks :-)
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.
Well, I was reusing the Ansible guidelines ; the idea being that as soon as we cut a new release, the very next thing we do is increment the version number (aka galaxy.yml version should match KUBESPRAY_NEXT_VERSION).
I think that way it would be harder to release with the wrong version, since it's checked by CI during all the time.
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.
Thanks , I got it :-)
How do you think about changing the commit and push.
to create a bump PR for it
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 don't have a strong opinion on that part. The one downside I can see for that is that it kinda breaks the workflow of doing a release (since you have to make a PR and get a lgtm for what is a really trivial change).
It's not that bad ofc, so I can change it if you like
Ideally we would have automation for that (prow creating a PR for updating the version number whenever it sees a releases), but well, we don't have that currently ^.
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.
Also if we go with that we'd have to use KUBESPRAY_NEXT_VERSION instead of KUBEPRAY_VERSION in the check-galaxy script
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 idea of automation is great, though we need to do it manually.👍
And the PR is better than a push because it can make the process more transparent :-)
I don't have a strong opinion on that part. The one downside I can see for that is that it kinda breaks the workflow of doing a release (since you have to make a PR and get a lgtm for what is a really trivial change). It's not that bad ofc, so I can change it if you like
Ideally we would have automation for that (prow creating a PR for updating the version number whenever it sees a releases), but well, we don't have that currently ^.
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.
Also, if we go with that, we'd have to use KUBESPRAY_NEXT_VERSION instead of KUBEPRAY_VERSION in the check-galaxy script
I agree with you; the CI code needs to be changed :-)
BTW, does the KUBESPRAY_NEXT_VERSION,
KUBESPRAY_VERSION,and
galaxy.yml` be changed together better?
Thank you
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.
Yeah good point I'll add that to the docs as well 👍
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.
Hum
I'm trying to refactor the check-galaxy version to have it check the next expected version, unfortunately it's not that easy since we don't have access to the target MR branch (so can't distinguish between minor/major....) 🤔
galaxy.yml
Outdated
@@ -2,7 +2,7 @@ | |||
namespace: kubernetes_sigs | |||
description: Deploy a production ready Kubernetes cluster | |||
name: kubespray | |||
version: 2.23.1 | |||
version: 2.24.0 | |||
readme: README.md |
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.
Hi @VannTen
It maybe better to use another PR to modify.
Because the PR is for docs changes :-)
RELEASE.md
Outdated
1. An approver creates [new release in GitHub](https://github.com/kubernetes-sigs/kubespray/releases/new) using a version and tag name like `vX.Y.Z` and attaching the release notes | ||
1. (Only for major releases) An approver creates a release branch in the form `release-X.Y` | ||
1. (Only for major releases) On the `master` branch: bump the version in `galaxy.yml` to the next expected major release (X.y.0 with y = Y + 1), commit and push. | ||
1. On the `release-X.Y` branch: bump the version in `galaxy.yml` to the next expected minor release (X.Y.z with z = Z + 1), commit and push. |
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 the galaxy.yml
can be ensured just before the tag, the line can be removed :-)
23b088e
to
046d804
Compare
* markdown numbered lists: no need to manually maitain the numbers * add instructions to update the collection version roughly following Ansible collection maintenance guidelines (https://docs.ansible.com/ansible/latest/community/collection_contributors/collection_release_with_branches.html) * Distinguish major from minor releases in the release process * Bump current galaxy.yml version to the next release
046d804
to
37f4329
Compare
Thanks @VannTen |
/cc @floryut |
/cc @MrFreezeex |
I'm not very familiar with the release process so I will let people that may do it check TBH. |
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.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: floryut, VannTen, yankay 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 |
/lgtm |
* markdown numbered lists: no need to manually maitain the numbers * add instructions to update the collection version roughly following Ansible collection maintenance guidelines (https://docs.ansible.com/ansible/latest/community/collection_contributors/collection_release_with_branches.html) * Distinguish major from minor releases in the release process * Bump current galaxy.yml version to the next release
What type of PR is this?
/kind documentation
What this PR does / why we need it:
markdown numbered lists: no need to manually maitain the numbers
add instructions to update the collection version roughly following
Ansible collection maintenance guidelines
(https://docs.ansible.com/ansible/latest/community/collection_contributors/collection_release_with_branches.html)
Distinguish major from minor releases in the release process
Bump current galaxy.yml version to the next release
Which issue(s) this PR fixes:
Fixes #10664
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
/assign @yankay
I also wonder if we should create an issue template for release, with a checklist for all the things in the list ?