Add -t to branch-stx.sh to enable a tag-only mode
We need to be able to tag final releases without creating a new branch. Changing the starting branch (formerly 'master') to be the same as the destination branch has the desired effect so the -t option does that in addition to skipping the automatic .gitreview update. Note that setting the source branch (SRC_BRANCH) to something other than master is also something we will need in the regualt branching mode now that we have default (working) branches in some of the staging repos set to names similar to stx/v1.2.3 to represent the starting point in the upstream repo of our working branch. Change-Id: Id0cb485a4f8a2ebd3feaf602a140f66ed3b91322 Signed-off-by: Dean Troyer <dtroyer@gmail.com>
This commit is contained in:
parent
09fa280504
commit
db54abe116
@ -11,6 +11,8 @@
|
||||
# -m <manifest> Extract the repo list from <manifest> for starlingx
|
||||
# and stx-staging remotes
|
||||
#
|
||||
# -t Set tag only (sets SRC_BRANCH == BRANCH)
|
||||
#
|
||||
# <repo-url> Specify one or more direct repo URLs to branch (ie git remote)
|
||||
# These are appended to the list of repos extracted from the
|
||||
# manifest if one is specified.
|
||||
@ -29,6 +31,10 @@
|
||||
# BRANCH is the actual branch name, derived by adding 'm/' (for milestones) or
|
||||
# 'r/' (for periodic releases) to SERIES.
|
||||
#
|
||||
# SRC_BRANCH is the starting point for the new branch. Needed when the working
|
||||
# branch is not named 'master'. When SRC_BRANCH == BRANCH this is effectively
|
||||
# a tag-only operation.
|
||||
#
|
||||
# TAG is the release tag that represents the actual release, derived by adding
|
||||
# a 'patch' version to SERIES, initially '0'. If TAG is unset no tag is created.
|
||||
#
|
||||
@ -47,7 +53,7 @@ set -e
|
||||
# Defaults
|
||||
MANIFEST=""
|
||||
|
||||
optspec="lm:n-:"
|
||||
optspec="lm:nt-:"
|
||||
while getopts "$optspec" o; do
|
||||
case "${o}" in
|
||||
# Hack in longopt support
|
||||
@ -73,6 +79,9 @@ while getopts "$optspec" o; do
|
||||
n)
|
||||
DRY_RUN=1
|
||||
;;
|
||||
t)
|
||||
TAG_ONLY=1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
shift $((OPTIND-1))
|
||||
@ -96,6 +105,14 @@ TAG=${TAG:-$SERIES.0}
|
||||
# The list of remotes to extract from MANIFEST
|
||||
REMOTES="starlingx stx-staging"
|
||||
|
||||
if [[ -n $TAG_ONLY ]]; then
|
||||
# Force source and target branches to be the same
|
||||
SRC_BRANCH=${BRANCH}
|
||||
fi
|
||||
|
||||
# The starting branch
|
||||
SRC_BRANCH=${SRC_BRANCH:-master}
|
||||
|
||||
# This is where other scripts live that we need
|
||||
script_dir=$(realpath $(dirname $0))
|
||||
|
||||
@ -136,7 +153,8 @@ function branch_repo {
|
||||
fi
|
||||
|
||||
pushd $repo_dir >/dev/null
|
||||
git checkout master
|
||||
git checkout $SRC_BRANCH
|
||||
git pull origin $SRC_BRANCH
|
||||
|
||||
if ! git branch | grep $BRANCH; then
|
||||
# create branch
|
||||
@ -162,7 +180,10 @@ function branch_repo {
|
||||
echo "### skipping push to $branch"
|
||||
fi
|
||||
|
||||
if [[ -z $TAG_ONLY ]]; then
|
||||
# Skip .gitreview changes for tag-only mode
|
||||
update_gitreview $branch
|
||||
fi
|
||||
else
|
||||
# Do the Github way
|
||||
# push
|
||||
|
Loading…
Reference in New Issue
Block a user