now changing release version before building and testing

This commit is contained in:
Mustapha Zorgati 2018-04-05 09:43:34 +02:00 committed by Holger Hagen
parent e3e91383c9
commit 9195db0e36
3 changed files with 48 additions and 8 deletions

View File

@ -14,6 +14,7 @@ cache:
before_install: before_install:
- nvm install $NODE_VERSION - nvm install $NODE_VERSION
- npm install -g @angular/cli >/dev/null 2>&1 - npm install -g @angular/cli >/dev/null 2>&1
- lib/deployment/change_version.sh rest/ lib/
install: install:
- (cd workplace && npm install --no-progress && ng build --environment=prod --no-progress) - (cd workplace && npm install --no-progress && ng build --environment=prod --no-progress)
&& (cd web && npm install --no-progress && npm run build:prod) && (cd web && npm install --no-progress && npm run build:prod)

View File

@ -0,0 +1,47 @@
#!/bin/bash
set -e #fail fast
#H Usage:
#H change_version.sh -h | change_version.sh --help
#H
#H prints this help and exits
#H
#H change_version.sh [modules...]
#H
#H if a release version exists (extracted from TRAVIS_TAG)
#H the maven versions of all modules will be changed to the given release version.
#H
#H Environment variables:
#H - TRAVIS_TAG
#H if this is a tagged build then TRAVIS_TAG contains the version number.
#H pattern: v[DIGIT].[DIGIT].[DIGIT]
# Arguments:
# $1: exitcode
function helpAndExit {
cat "$0" | grep "^#H" | cut -c4-
exit "$1"
}
# changing version in pom and all its children
# Arguments:
# $1: directory of pom
# $2: new version
function change_version {
$debug mvn org.codehaus.mojo:versions-maven-plugin:2.5:set -f "$1" -DnewVersion="$2" -DartifactId=* -DgroupId=*
}
function main {
if [[ $# -eq 0 || "$1" == "-h" || "$1" == "--help" ]]; then
helpAndExit 0
fi
if [[ "$TRAVIS_TAG" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
while [[ $# -gt 0 ]]; do
change_version "$1" "${TRAVIS_TAG##v}"
shift
done
else
echo "skipped version change because this is not a release build"
fi
}
main "$@"

View File

@ -273,14 +273,6 @@ function main {
branch="BRANCH" branch="BRANCH"
echo "!!! - Skipping automatic detection of tag branch. Instead using '$branch'" echo "!!! - Skipping automatic detection of tag branch. Instead using '$branch'"
fi fi
if [[ -n "$PARENT_DIR" ]]; then
change_version "$PARENT_DIR" "${TRAVIS_TAG##v}"
else
for dir in ${MODULES[@]}; do
change_version "$dir" "${TRAVIS_TAG##v}"
done
fi
else else
if [[ "$TRAVIS_BRANCH" != 'master' ]]; then if [[ "$TRAVIS_BRANCH" != 'master' ]]; then
echo "Skipping release to sonatype because this branch is not permitted" echo "Skipping release to sonatype because this branch is not permitted"