Scripts
This commit is contained in:
+41
-2
@@ -24,7 +24,12 @@ usage() {
|
||||
echo " -p: Publish (requires a version)" 1>&2;
|
||||
echo " -X: Staging Deploy (requires a version)" 1>&2;
|
||||
echo " -x: Production Deploy (requires a version)" 1>&2;
|
||||
echo " -t: Software version, this will be used for the docker tag (default: local)" 1>&2;
|
||||
echo " Tagging, docker images (default: local)" 1>&2;
|
||||
echo " -t: Manual tag" 1>&2;
|
||||
echo " -T: Autotag patch/release" 1>&2;
|
||||
echo " -m: Autotag minor" 1>&2;
|
||||
echo " -M: Autotag major" 1>&2;
|
||||
echo " -P: Pre-release" 1>&2;
|
||||
echo " -v: Verbose" 1>&2;
|
||||
exit 1;
|
||||
}
|
||||
@@ -35,10 +40,13 @@ PUBLISH_MODE=0
|
||||
DEPLOY_TEST_MODE=0
|
||||
DEPLOY_PROD_MODE=0
|
||||
SELECTED_MODES=0
|
||||
TAG_IMPLICIT=1
|
||||
|
||||
TAG="local"
|
||||
TAG_OPTS=""
|
||||
AUTOTAG=0
|
||||
|
||||
while getopts "t:hvudpxX" o; do
|
||||
while getopts "t:TmMPhvudpxX" o; do
|
||||
case "${o}" in
|
||||
u)
|
||||
UNIT_MODE=1
|
||||
@@ -63,6 +71,27 @@ while getopts "t:hvudpxX" o; do
|
||||
|
||||
t)
|
||||
TAG=${OPTARG}
|
||||
TAG_IMPLICIT=0
|
||||
;;
|
||||
T)
|
||||
TAG_OPTS="${TAG_OPTS}r"
|
||||
TAG_IMPLICIT=0
|
||||
AUTOTAG=1
|
||||
;;
|
||||
m)
|
||||
TAG_OPTS="${TAG_OPTS}m"
|
||||
TAG_IMPLICIT=0
|
||||
AUTOTAG=1
|
||||
;;
|
||||
M)
|
||||
TAG_OPTS="${TAG_OPTS}M"
|
||||
TAG_IMPLICIT=0
|
||||
AUTOTAG=1
|
||||
;;
|
||||
P)
|
||||
TAG_OPTS="${TAG_OPTS}p"
|
||||
TAG_IMPLICIT=0
|
||||
AUTOTAG=1
|
||||
;;
|
||||
v)
|
||||
VERBOSE=1
|
||||
@@ -87,6 +116,11 @@ if [[ $SELECTED_MODES -ne 1 ]]; then
|
||||
usage
|
||||
fi
|
||||
|
||||
if [[ $AUTOTAG -eq 1 ]]; then
|
||||
TAG=`./next-ver.sh -${TAG_OPTS}`
|
||||
echo "Using tag $TAG"
|
||||
fi
|
||||
|
||||
./aws-login.sh
|
||||
|
||||
if [[ $UNIT_MODE -eq 1 ]]; then
|
||||
@@ -115,6 +149,11 @@ if [[ $PUBLISH_MODE -eq 1 ]]; then
|
||||
./run-unit.sh $VERBOPT -t $TAG
|
||||
|
||||
./publish.sh $VERBOPT -t $TAG
|
||||
|
||||
if [[ $TAG_IMPLICIT -ne 1 ]]; then
|
||||
git tag $TAG
|
||||
git push --tags
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
|
||||
Executable
+3
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
|
||||
git tag -l --sort=-version:refname | head -n 1
|
||||
Executable
+59
@@ -0,0 +1,59 @@
|
||||
#!/bin/bash
|
||||
|
||||
usage() {
|
||||
echo "Usage: $0 [-h] [-m|M] [-p]" 1>&2;
|
||||
echo " -h: This message" 1>&2;
|
||||
echo " -p: Pre release" 1>&2;
|
||||
echo " -m: Increment minor" 1>&2;
|
||||
echo " -M: Increment major" 1>&2;
|
||||
}
|
||||
|
||||
PRE_RELEASE=0
|
||||
ALTERS=0
|
||||
ALTER_NAME="release"
|
||||
|
||||
while getopts "hpmMr" o; do
|
||||
case "${o}" in
|
||||
p)
|
||||
PRE_RELEASE=1
|
||||
;;
|
||||
r)
|
||||
ALTERS=$ALTERS+1
|
||||
ALTER_NAME="release"
|
||||
;;
|
||||
m)
|
||||
ALTERS=$ALTERS+1
|
||||
ALTER_NAME="minor"
|
||||
;;
|
||||
M)
|
||||
ALTERS=$ALTERS+1
|
||||
ALTER_NAME="major"
|
||||
;;
|
||||
h)
|
||||
usage
|
||||
exit 0;
|
||||
;;
|
||||
*)
|
||||
printerr "Unsupported option ${o}"
|
||||
usage
|
||||
exit 1;
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [[ $ALTERS -gt 1 ]]; then
|
||||
echo "You can specify exactly one option between m and M"
|
||||
usage
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
CURRENT_VERSION=`./latest-ver.sh`
|
||||
|
||||
INCREMENT_NAME=$ALTER_NAME
|
||||
if [[ $PRE_RELEASE -gt 0 ]]; then
|
||||
INCREMENT_NAME="pre$INCREMENT_NAME"
|
||||
fi
|
||||
|
||||
NEW_VERSION=`semver $CURRENT_VERSION --preid rc -i $INCREMENT_NAME`
|
||||
|
||||
echo "$NEW_VERSION"
|
||||
Reference in New Issue
Block a user