From 3d10add92567eaa4a5b5f2077e52826bb326a507 Mon Sep 17 00:00:00 2001 From: "Christian P. MOMON" Date: Sun, 7 Jan 2018 02:54:49 +0100 Subject: [PATCH] Improved build script. --- build-appjar.xml | 2 +- build.xml => build-local.xml | 1 + build-snapshot.xml | 27 ++++ buildandgit.xml => build-tagandpush.xml | 1 + build.num | 2 +- build.sh | 192 ++++++++++++++++++++---- 6 files changed, 191 insertions(+), 34 deletions(-) rename build.xml => build-local.xml (77%) create mode 100644 build-snapshot.xml rename buildandgit.xml => build-tagandpush.xml (78%) diff --git a/build-appjar.xml b/build-appjar.xml index f72b13f..9799526 100644 --- a/build-appjar.xml +++ b/build-appjar.xml @@ -71,7 +71,7 @@ - + diff --git a/build.xml b/build-local.xml similarity index 77% rename from build.xml rename to build-local.xml index 39c1ec8..42599df 100644 --- a/build.xml +++ b/build-local.xml @@ -2,4 +2,5 @@ + diff --git a/build-snapshot.xml b/build-snapshot.xml new file mode 100644 index 0000000..33c4142 --- /dev/null +++ b/build-snapshot.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/buildandgit.xml b/build-tagandpush.xml similarity index 78% rename from buildandgit.xml rename to build-tagandpush.xml index d7f899b..326d0e4 100644 --- a/buildandgit.xml +++ b/build-tagandpush.xml @@ -2,4 +2,5 @@ + diff --git a/build.num b/build.num index a99ac7f..6f53257 100644 --- a/build.num +++ b/build.num @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Sat Jan 06 02:22:43 CET 2018 +#Sun Jan 07 02:45:10 CET 2018 build.number=0 diff --git a/build.sh b/build.sh index 116375e..0c48d88 100755 --- a/build.sh +++ b/build.sh @@ -1,40 +1,168 @@ #/bin/bash -echo "Hebdobot build" +# +# Display help. +# +function help +{ + echo "Hebdobot build script." + echo "Usage: build.sh [ -h | -help | --help | -snapshot | -local | -full ]" + echo " -h, -help, --help display this help." + echo " -snapshot, --snapshot build a snapshot." + echo " -local, --local build a new version without tag nor version number commit nor GIT push." + echo " -tagandpush, --tagandpush build a new version with tag, version number commit and GIT push." + echo "" +} -okCount=0 +# +# Build snapshot. +# +function build_snapshot +{ + okCount=0 + + # Ant check. + antCheck=`which ant` + if [[ "$antCheck" =~ ^/.* ]]; then + echo "Ant requirement................ OK" + let "okCount+=1" + else + echo "Ant requirement................ MISSING" + fi + + # Javac check. + javacCheck=`which javac` + if [[ "$javacCheck" =~ ^/.* ]]; then + echo "Javac requirement.............. OK" + let "okCount+=1" + else + echo "Javac requirement.............. MISSING" + fi + + # Java version check. + javaVersionCheck=`javac -version 2>&1` + if [[ "$javaVersionCheck" =~ ^.*\ 1.8 ]]; then + echo "Java 8 version requirement..... OK" + let "okCount+=1" + else + echo "Java 8 version requirement..... MISSING" + fi + + if [ "$okCount" == 3 ]; then + echo "Requirement OK" + ant -f build-snapshot.xml + else + echo "Requirement MISSING, build abort" + fi +} -# Ant check. -antCheck=`which ant` -if [[ "$antCheck" =~ ^/.* ]]; then - echo "Ant requirement................ OK" - let "okCount+=1" +# +# Build local. +# +function build_local +{ + okCount=0 + + # Ant check. + antCheck=`which ant` + if [[ "$antCheck" =~ ^/.* ]]; then + echo "Ant requirement................ OK" + let "okCount+=1" + else + echo "Ant requirement................ MISSING" + fi + + # Javac check. + javacCheck=`which javac` + if [[ "$javacCheck" =~ ^/.* ]]; then + echo "Javac requirement.............. OK" + let "okCount+=1" + else + echo "Javac requirement.............. MISSING" + fi + + # Java version check. + javaVersionCheck=`javac -version 2>&1` + if [[ "$javaVersionCheck" =~ ^.*\ 1.8 ]]; then + echo "Java 8 version requirement..... OK" + let "okCount+=1" + else + echo "Java 8 version requirement..... MISSING" + fi + + if [ "$okCount" == 3 ]; then + echo "Requirement OK" + ant -f build-local.xml + else + echo "Requirement MISSING, build abort" + fi +} + +# +# Build tagandpush. +# +function build_tagandpush +{ + okCount=0 + + # Ant check. + antCheck=`which ant` + if [[ "$antCheck" =~ ^/.* ]]; then + echo "Ant requirement................ OK" + let "okCount+=1" + else + echo "Ant requirement................ MISSING" + fi + + # Javac check. + javacCheck=`which javac` + if [[ "$javacCheck" =~ ^/.* ]]; then + echo "Javac requirement.............. OK" + let "okCount+=1" + else + echo "Javac requirement.............. MISSING" + fi + + # Java version check. + javaVersionCheck=`javac -version 2>&1` + if [[ "$javaVersionCheck" =~ ^.*\ 1.8 ]]; then + echo "Java 8 version requirement..... OK" + let "okCount+=1" + else + echo "Java 8 version requirement..... MISSING" + fi + + # Git check. + gitCheck=`which git 2>&1` + if [[ "$gitCheck" =~ ^.*\ 1.8 ]]; then + echo "GIT requirement................ OK" + let "okCount+=1" + else + echo "GIT requirement................ MISSING" + fi + + if [ "$okCount" == 4 ]; then + echo "Requirement OK" + ant -f build-tagandpush.xml + else + echo "Requirement MISSING, build abort" + fi +} + +# +# Main. +# +if [ "$#" -eq 0 ] || [ "$1" == "-h" ] || [ "$1" == "-help" ] || [ "$1" == "--help" ]; then + help +elif [ "$1" == "-snapshot" ] || [ "$1" == "--snapshot" ] ; then + build_snapshot +elif [ "$1" == "-local" ] || [ "$1" == "--local" ] ; then + build_local +elif [ "$1" == "-tagandpush" ] || [ "$1" == "--tagandpush" ] ; then + build_tagandpush else - echo "Ant requirement................ MISSING" + echo "Invalid parameters." + help fi -# Javac check. -javacCheck=`which javac` -if [[ "$javacCheck" =~ ^/.* ]]; then - echo "Javac requirement.............. OK" - let "okCount+=1" -else - echo "Javac requirement.............. MISSING" -fi - -# Java version check. -javaVersionCheck=`javac -version 2>&1` -if [[ "$javaVersionCheck" =~ ^.*\ 1.8 ]]; then - echo "Java 8 version requirement..... OK" - let "okCount+=1" -else - echo "Java 8 version requirement..... MISSING" -fi - -if [ "$okCount" == 3 ]; then - echo "Requirement OK" - ant -f build.xml -else - echo "Requirement MISSING, build abort" -fi