23 lines
1.2 KiB
Bash
23 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
echo "Configuring the next version ..."
|
|
CURRENT_FULL_VERSION=`mvn help:evaluate -q -DforceStdout -Dexpression=project.version`
|
|
echo "Detected the current version: ${CURRENT_FULL_VERSION}"
|
|
CURRENT_MINOR_VERSION=`echo "${CURRENT_FULL_VERSION}" | sed 's~^\([^\.]\+\.[^\.\-]\+\).*~\1~'`
|
|
echo "Computed the current minor version: ${CURRENT_MINOR_VERSION}"
|
|
|
|
CURRENT_APS_MAJOR_VERSION=`mvn help:evaluate -q -DforceStdout -Dexpression=aps.majorVersion`
|
|
echo "Detected the current APS major version: ${CURRENT_APS_MAJOR_VERSION}"
|
|
|
|
set +e
|
|
LATEST_SERVICE_VERSION=`git ls-remote --tags --refs --sort=-v:refname origin v${CURRENT_MINOR_VERSION}*-aps-v${CURRENT_APS_MAJOR_VERSION} | grep refs/tags | head -n1 | sed "s~.\+refs/tags/v${CURRENT_MINOR_VERSION}\.\([^\.\-]\+\).*~\1~"`
|
|
set -e
|
|
echo "Detected the latest service version in Git for the minor version: ${CURRENT_MINOR_VERSION}.#-aps-v${CURRENT_APS_MAJOR_VERSION} => ${LATEST_SERVICE_VERSION}"
|
|
if [[ -z ${LATEST_SERVICE_VERSION} ]]; then
|
|
LATEST_SERVICE_VERSION=-1
|
|
fi
|
|
NEXT_FULL_VERSION="${CURRENT_MINOR_VERSION}.$((LATEST_SERVICE_VERSION + 1))-aps-v${CURRENT_APS_MAJOR_VERSION}"
|
|
echo "Computed the next version: ${NEXT_FULL_VERSION}"
|
|
|
|
mvn versions:set -DnewVersion=${NEXT_FULL_VERSION}
|