mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 14:37:00 +00:00
Merge pull request #18598 from ihmccreery/release-mark-stable
Auto commit by PR queue bot
This commit is contained in:
commit
9033311475
@ -170,39 +170,35 @@ and follow the instructions.
|
|||||||
|
|
||||||
### Publishing binaries and release notes
|
### Publishing binaries and release notes
|
||||||
|
|
||||||
|
Only publish a beta release if it's a standalone pre-release (*not*
|
||||||
|
vX.Y.Z-beta.0). We create beta tags after we do official releases to
|
||||||
|
maintain proper semantic versioning, but we don't publish these beta releases.
|
||||||
|
|
||||||
The script you ran above will prompt you to take any remaining steps to push
|
The script you ran above will prompt you to take any remaining steps to push
|
||||||
tars, and will also give you a template for the release notes. Compose an
|
tars, and will also give you a template for the release notes. Compose an
|
||||||
email to the team with the template, and use `build/make-release-notes.sh`
|
email to the team with the template. Figure out what the PR numbers for this
|
||||||
and/or `release-notes/release-notes.go` in
|
release and last release are, and get an api-token from GitHub
|
||||||
[kubernetes/contrib](https://github.com/kubernetes/contrib) to make the release
|
(https://github.com/settings/tokens). From a clone of
|
||||||
notes, (see #17444 for more info).
|
[kubernetes/contrib](https://github.com/kubernetes/contrib),
|
||||||
|
|
||||||
- Alpha release:
|
```
|
||||||
- Figure out what the PR numbers for this release and last release are, and
|
go run release-notes/release-notes.go --last-release-pr=<number> --current-release-pr=<number> --api-token=<token> --base=<release-branch>
|
||||||
get an api-token from GitHub (https://github.com/settings/tokens). From a
|
```
|
||||||
clone of kubernetes/contrib at upstream/master,
|
|
||||||
go run release-notes/release-notes.go --last-release-pr=<number> --current-release-pr=<number> --api-token=<token>
|
where `<release-branch>` is `master` for alpha releases and `release-X.Y` for beta and official releases.
|
||||||
Feel free to prune.
|
|
||||||
- Beta release:
|
**If this is a first official release (vX.Y.0)**, look through the release
|
||||||
- Only publish a beta release if it's a standalone pre-release. (We create
|
notes for all of the alpha releases since the last cycle, and include anything
|
||||||
beta tags after we do official releases to maintain proper semantic
|
important in release notes.
|
||||||
versioning, *we don't publish these beta releases*.) Use
|
|
||||||
`./hack/cherry_pick_list.sh ${RELEASE_VERSION}` to get release notes for such a
|
Feel free to edit the notes, (e.g. cherry picks should generally just have the
|
||||||
release.
|
same title as the original PR).
|
||||||
- Official release:
|
|
||||||
- From your clone of upstream/master, run `./hack/cherry_pick_list.sh ${RELEASE_VERSION}`
|
|
||||||
to get the release notes for the patch release you just created. Feel free
|
|
||||||
to prune anything internal, but typically for patch releases we tend to
|
|
||||||
include everything in the release notes.
|
|
||||||
- If this is a first official release (vX.Y.0), look through the release
|
|
||||||
notes for all of the alpha releases since the last cycle, and include
|
|
||||||
anything important in release notes.
|
|
||||||
|
|
||||||
Send the email out, letting people know these are the draft release notes. If
|
Send the email out, letting people know these are the draft release notes. If
|
||||||
they want to change anything, they should update the appropriate PRs with the
|
they want to change anything, they should update the appropriate PRs with the
|
||||||
`release-note` label.
|
`release-note` label.
|
||||||
|
|
||||||
When we're ready to announce the release, [create a GitHub
|
When you're ready to announce the release, [create a GitHub
|
||||||
release](https://github.com/kubernetes/kubernetes/releases/new):
|
release](https://github.com/kubernetes/kubernetes/releases/new):
|
||||||
|
|
||||||
1. pick the appropriate tag;
|
1. pick the appropriate tag;
|
||||||
@ -216,6 +212,10 @@ console.developers.google.com/storage/browser/kubernetes-release/release/),
|
|||||||
notes draft), and attach it to the release; and
|
notes draft), and attach it to the release; and
|
||||||
1. publish!
|
1. publish!
|
||||||
|
|
||||||
|
Finally, from a clone of upstream/master, *make sure* you still have
|
||||||
|
`RELEASE_VERSION` set correctly, and run `./build/mark-stable-release.sh
|
||||||
|
${RELEASE_VERSION}`.
|
||||||
|
|
||||||
## Injecting Version into Binaries
|
## Injecting Version into Binaries
|
||||||
|
|
||||||
*Please note that this information may be out of date. The scripts are the
|
*Please note that this information may be out of date. The scripts are the
|
||||||
|
@ -1,49 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Copyright 2015 The Kubernetes Authors All rights reserved.
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
# List cherry picks sitting on a release branch that AREN'T YET part
|
|
||||||
# of a release. Used when constructing a release.
|
|
||||||
|
|
||||||
set -o errexit
|
|
||||||
set -o nounset
|
|
||||||
set -o pipefail
|
|
||||||
|
|
||||||
declare -r KUBE_ROOT="$(dirname "${BASH_SOURCE}")/.."
|
|
||||||
|
|
||||||
if [[ "$#" -ne 1 ]]; then
|
|
||||||
echo "${0} <remote branch>: list all automated cherry picks on <remote release branch> since last release."
|
|
||||||
echo " (assumes branch format of cherry_pick_pull.sh)"
|
|
||||||
echo ""
|
|
||||||
echo "Example:"
|
|
||||||
echo " $0 upstream/release-1.0 # Lists all PRs on release-1.0 since list patch release."
|
|
||||||
exit 2
|
|
||||||
fi
|
|
||||||
|
|
||||||
declare -r BRANCH="$1"
|
|
||||||
|
|
||||||
git remote update >/dev/null
|
|
||||||
|
|
||||||
# First, the range specification: --abbrev=0 is saying to find the tag
|
|
||||||
# relevant for the branch, so this essentially the git log all the way
|
|
||||||
# back to the most recent tag on the release branch.
|
|
||||||
#
|
|
||||||
# The git log outputs something like:
|
|
||||||
# 0f3cdb7234e2239707e4c3fc58f5f89552f41c65 Merge pull request #98765 from zaphod/automated-cherry-pick-of-#12345-#56789-#13579-upstream-release-1.0
|
|
||||||
PULLS=( $(git log $(git describe --abbrev=0 "${BRANCH}").."${BRANCH}" -E --grep="Merge pull request \#[0-9]+ from .+/automated-cherry-pick-of-" --pretty=oneline |
|
|
||||||
awk '{ print $7 }' | sed -e 's/.*automated-cherry-pick-of-\(#[0-9]\{1,\}\)/\1/' -e 's/\(#[0-9]\{1,\}\)-[^#].*/\1/' -e 's/-/\
|
|
||||||
/g' | sed 's/^#//g') )
|
|
||||||
|
|
||||||
${KUBE_ROOT}/hack/lookup_pull.py "${PULLS[@]}"
|
|
Loading…
Reference in New Issue
Block a user