Update docs and prompts for better dry-runs and no more versionizing docs

pull/6/head
Isaac Hollander McCreery 2015-11-02 15:38:57 -08:00
parent bc9feec409
commit 346676280f
2 changed files with 69 additions and 12 deletions

View File

@ -148,12 +148,49 @@ then, run
release/cut-official-release.sh "${VER}" "${GITHASH}"
```
This will:
This will do a dry run of:
1. mark the `vX.Y.0-alpha.W` tag at the given git hash;
1. prompt you to do the remainder of the work, including building the
appropriate binaries and pushing them to the appropriate places.
If you're satisfied with the result, run
```console
release/cut-official-release.sh "${VER}" "${GITHASH}" --no-dry-run
```
and follow the instructions.
#### Cutting an beta release (`vX.Y.Z-beta.W`)
Figure out what version you're cutting, and
```console
export VER="vX.Y.Z-beta.W"
```
then, run
```console
release/cut-official-release.sh "${VER}" "${GITHASH}"
```
This will do a dry run of:
1. do a series of commits on the release branch for `vX.Y.Z-beta`;
1. mark the `vX.Y.Z-beta` tag at the beta version commit;
1. prompt you to do the remainder of the work, including building the
appropriate binaries and pushing them to the appropriate places.
If you're satisfied with the result, run
```console
release/cut-official-release.sh "${VER}" "${GITHASH}" --no-dry-run
```
and follow the instructions.
#### Cutting an official release (`vX.Y.Z`)
Figure out what version you're cutting, and
@ -168,18 +205,24 @@ then, run
release/cut-official-release.sh "${VER}" "${GITHASH}"
```
This will:
This will do a dry run of:
1. do a series of commits on the branch for `vX.Y.Z`, including versionizing
the documentation and doing the release version commit;
1. do a series of commits on the branch for `vX.Y.Z`;
1. mark the `vX.Y.Z` tag at the release version commit;
1. do a series of commits on the branch for `vX.Y.(Z+1)-beta` on top of the
previous commits, including versionizing the documentation and doing the
beta version commit;
previous commits;
1. mark the `vX.Y.(Z+1)-beta` tag at the beta version commit;
1. prompt you to do the remainder of the work, including building the
appropriate binaries and pushing them to the appropriate places.
If you're satisfied with the result, run
```console
release/cut-official-release.sh "${VER}" "${GITHASH}" --no-dry-run
```
and follow the instructions.
#### Branching a new release series (`vX.Y`)
Once again, **this is a big deal!** If you're reading this doc for the first
@ -198,16 +241,23 @@ then, run
release/cut-official-release.sh "${VER}" "${GITHASH}"
```
This will:
This will do a dry run of:
1. mark the `vX.(Y+1).0-alpha.0` tag at the given git hash on `master`;
1. fork a new branch `release-X.Y` off of `master` at the given git hash;
1. do a series of commits on the branch for `vX.Y.0-beta`, including versionizing
the documentation and doing the release version commit;
1. do a series of commits on the branch for `vX.Y.0-beta`;
1. mark the `vX.Y.0-beta` tag at the beta version commit;
1. prompt you to do the remainder of the work, including building the
appropriate binaries and pushing them to the appropriate places.
If you're satisfied with the result, run
```console
release/cut-official-release.sh "${VER}" "${GITHASH}" --no-dry-run
```
and follow the instructions.
### Publishing binaries and release notes
The script you ran above will prompt you to take any remaining steps, including

View File

@ -93,11 +93,20 @@ function main() {
local -r release_umask=${release_umask:-022}
umask "${release_umask}"
local -r github="https://github.com/kubernetes/kubernetes.git"
declare -r DIR="/tmp/kubernetes-${release_type}-release-${new_version}-$(date +%s)"
# Start a tmp file that will hold instructions for the user.
declare -r INSTRUCTIONS="/tmp/kubernetes-${release_type}-release-${new_version}-$(date +%s)-instructions"
if $DRY_RUN; then
cat > "${INSTRUCTIONS}" <<- EOM
Success! You would now do the following, if not a dry run:
Success on dry run! Do
pushd ${DIR}
to see what happened.
You would now do the following, if not a dry run:
EOM
else
@ -107,8 +116,6 @@ Success! You must now do the following:
EOM
fi
local -r github="https://github.com/kubernetes/kubernetes.git"
declare -r DIR="/tmp/kubernetes-${release_type}-release-${new_version}-$(date +%s)"
echo "Cloning from '${github}'..."
git clone "${github}" "${DIR}"