diff options
author | Damien Martin-Guillerez <dmarting@google.com> | 2016-12-06 12:24:14 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2016-12-06 13:35:35 +0000 |
commit | c3e5743045a23d5a67c79d7175d724726f7a7abf (patch) | |
tree | c9ada6f09e620af0a9ccdc9954e05e2dcf41da4a /scripts/release/release.sh | |
parent | 6c66e5010b14d00f122686f553c7110fc3c411a5 (diff) |
Release: add a generate-rc command to the release script
This generate-rc command allows people to use the git workflow, that is:
$ git checkout -b release-name baseline
$ git cherry-pick commit1 commit2 ...
$ ./scripts/release/release.sh generate-rc
Instead of
$ ./scripts/release/release.sh create name baseline commit1 commit2 ....
--
Change-Id: I4a00f7ab46590450ba7ee26c6509ed747f32d956
Reviewed-on: https://cr.bazel.build/7450
PiperOrigin-RevId: 141163272
MOS_MIGRATED_REVID=141163272
Diffstat (limited to 'scripts/release/release.sh')
-rwxr-xr-x | scripts/release/release.sh | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/release/release.sh b/scripts/release/release.sh index 7e92c76cab..53f989e3af 100755 --- a/scripts/release/release.sh +++ b/scripts/release/release.sh @@ -338,6 +338,8 @@ function abandon_release() { echo -n "You are about to abandon release ${tag_name}, confirm? [y/N] " read answer if [ "$answer" = "y" -o "$answer" = "Y" ]; then + git notes --ref=release remove 2>/dev/null || true + git notes --ref=release-candidate remove 2>/dev/null || true git checkout -q master >/dev/null cleanup_branches ${tag_name} fi @@ -353,6 +355,13 @@ Available commands are: COMMIT1 ... COMMITN. The release candidate number will be computed from existing release branch unless --force_rc is specified. + - generate-rc [--force_rc=RC]: generate a release candidate out of + the current branch, the branch should be named "release-XXX" + where "XXX" is the name of the release. This branch should be + a fork of master in which some cherry-picks where taken from + master. --force_rc can be used to override the RC number + (by default it tries to look for latest release and increment + the rc number). - push: push the current release branch to release repositories. - release: do the actual release of the current release branch. - abandon: abandon the current release branch. @@ -400,6 +409,14 @@ case $cmd in release) do_release ;; + generate-rc) + force_rc= + if [[ "${1-}" =~ ^--force_rc=([0-9]*)$ ]]; then + force_rc=${BASH_REMATCH[1]} + shift 1 + fi + setup_git_notes "${force_rc}" + ;; abandon) abandon_release ;; |