aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xreleasetag.sh16
1 files changed, 10 insertions, 6 deletions
diff --git a/releasetag.sh b/releasetag.sh
index 734fa3d..370d397 100755
--- a/releasetag.sh
+++ b/releasetag.sh
@@ -22,6 +22,7 @@ set -e
# Variables
SCRIPT=$0
REPLICANT_DIR=$1
+FORCE=$2
. $(dirname $0)/releasevars.sh
@@ -35,10 +36,10 @@ tag_repos () {
cd "$REPLICANT_DIR"
TAG_MESSAGE="Replicant $(echo $RELEASE | sed 's/-/ /') images release"
TAGGING_CMD="echo \"Tagging $color_start \$REPO_PROJECT $color_end\" && \
- git tag -u $RELEASE_KEY -m \"${TAG_MESSAGE}\" \
+ git tag ${FORCE} -u $RELEASE_KEY -m \"${TAG_MESSAGE}\" \
\"replicant-$RELEASE\""
PUSHING_CMD="echo \"Pushing $color_start \$REPO_PROJECT $color_end\" && \
- git push \"git@$PUSH_REMOTE:\$REPO_PROJECT\" \"replicant-$RELEASE\""
+ git push ${FORCE} \"git@$PUSH_REMOTE:\$REPO_PROJECT\" \"replicant-$RELEASE\""
repo forall -c "$TAGGING_CMD && $PUSHING_CMD"
repo forall -c "$TAGGING_CMD && $PUSHING_CMD"
@@ -47,14 +48,17 @@ tag_repos () {
}
print_help () {
- echo "$SCRIPT: <REPLICANT_DIR>"
+ echo "$SCRIPT: <REPLICANT_DIR> [-f]"
+ echo ""
+ echo " -f, --force use git tag --force and git push --force"
+ exit 1
}
# Check for the correct number of args
-if [ "$#" -lt "$ARGS_COUNT" ]
-then
+if [ "$#" -lt "$ARGS_COUNT" ] ; then
+ print_help
+elif [ "$#" -eq 2 -a "$2" != "-f" -a "$2" != "--force" ] ; then
print_help
- exit 1
fi
tag_repos