time-calc/build.sh

62 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
MVN_ARG=$1
replace () {
INPUT=$1
OLD=$2
NEW=$3
OUTPUT=$(echo $INPUT | sed "s/$OLD/$NEW/")
echo "$OUTPUT"
}
replaceInFile() {
INPUT=$1
OLD=$2
NEW=$3
echo INPUT=$INPUT
echo OLD=$OLD
echo NEW=$NEW
sed -i 's/$OLD/$NEW/g' $INPUT
cat $INPUT
}
echo ... 1. Building
mvn clean install $MVN_ARG
#Use mvn clean install -o to build offline
if [ $? -eq 0 ]
then
echo "Build was finished"
else
echo "Build failed. Exiting"
exit
fi
echo ... 2. Deleting dist directory
rm ./dist/*.jar
echo ... 3. Detecting version
cd modules/time-calc-app/target
VERSION=`ls time-calc-app-*-jar-with-all-dependencies.jar`
VERSION=`replace $VERSION "-jar-with-all-dependencies.jar" ""`
VERSION=`replace $VERSION "time-calc-app-" ""`
ORIG_VERSION=$VERSION
BUILD_TIMESTAMP=`date +'%Y%m%d_%H%M%S'`
if [[ `ls time-calc-app-*-jar-with-all-dependencies.jar` == *"SNAPSHOT"* ]];
then
VERSION=`echo $VERSION-$BUILD_TIMESTAMP`
else
echo "Release is in progress."
fi
echo version=$VERSION
cd ../../..
mkdir dist
echo $VERSION>./dist/VERSION
echo ... 4. Moving new jar file to dist directory
mv ./modules/time-calc-app/target/time-calc-app-$ORIG_VERSION-jar-with-all-dependencies.jar ./dist/time-calc-$VERSION.jar
rm ./modules/time-calc-app/target/time-calc-app-$ORIG_VERSION.jar
#cp ./dist/time-calc-$VERSION.jar C:/Users/user/Desktop/rv