@@ -6,11 +6,13 @@ RELEASE_VERSION=$1
6
6
DEVEL_VERSION=$2
7
7
8
8
if [ $1 " x" == " x" ] || [ $2 " x" == " x" ]; then
9
- echo " Usage: ./release.sh <release version> <new snapshot version>"
10
- echo " Example: ./release 1.1.0 1.2.0-SNAPSHOT"
9
+ echo " Usage: ./release.sh <release version> <new snapshot version> [upstream repo] "
10
+ echo " Example: ./release 1.1.0 1.2.0-SNAPSHOT origin "
11
11
exit 1
12
12
fi
13
13
14
+ UPSTREAM=${3-origin}
15
+
14
16
# prepare and verify state
15
17
git fetch --all
16
18
rm -rf ~ /.m2/repository/com/redhat/lightblue/
@@ -24,12 +26,12 @@ if [ $BRANCH != "master" ]; then
24
26
fi
25
27
fi
26
28
27
- # check that local branch is equal to upstream master (assumes remote of origin)
28
- MERGE_BASE=` git merge-base HEAD origin /master`
29
+ # check that local branch is equal to upstream master
30
+ MERGE_BASE=` git merge-base HEAD ${UPSTREAM} /master`
29
31
HEAD_HASH=` git rev-parse HEAD`
30
32
31
33
if [ $MERGE_BASE != $HEAD_HASH ]; then
32
- echo " Local branch is not in sync with origin /master. Fix and run this script again."
34
+ echo " Local branch is not in sync with ${UPSTREAM} /master. Fix and run this script again."
33
35
exit 1
34
36
fi
35
37
@@ -45,7 +47,7 @@ mvn release:prepare -P release \
45
47
-Dtag=V${RELEASE_VERSION} || exit
46
48
47
49
# push prepared changes (doing separate just to have control)
48
- git push origin master --tags
50
+ git push ${UPSTREAM} master --tags
49
51
50
52
# perform release
51
53
mvn release:perform -P release || exit
@@ -54,7 +56,7 @@ mvn release:perform -P release || exit
54
56
mvn versions:use-latest-snapshots versions:update-properties -Dincludes=* lightblue* -DallowSnapshots=true
55
57
git add pom.xml ** /pom.xml
56
58
git commit -m " Updated to latest snapshot dependencies"
57
- git push origin master
59
+ git push ${UPSTREAM} master
58
60
59
61
# deploy updated snapshots
60
62
mvn clean deploy
0 commit comments