From f331dbbf057beb681be9e597da8f8c8c8bd2cc0c Mon Sep 17 00:00:00 2001 From: Quentin Guillemin Date: Wed, 10 Jan 2024 16:38:45 +0100 Subject: [PATCH] refactor: new build script --- README.md | 4 ++-- build.sh | 12 ----------- init.sh | 16 -------------- scripts/build.sh | 54 ++++++++++++++++++++++++++++++++++++++++++++++++ scripts/init.sh | 19 +++++++++++++++++ 5 files changed, 75 insertions(+), 30 deletions(-) delete mode 100755 build.sh delete mode 100755 init.sh create mode 100755 scripts/build.sh create mode 100755 scripts/init.sh diff --git a/README.md b/README.md index de9f6bc4..c5936ce4 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Gestion locale des comptes. ## Prepare environment ```bash -./init.sh +./scripts/init.sh ``` Complete the `.env.local` (located at root) file and the `application-dev.yml` file (located in `src/main/resources/config`). @@ -32,5 +32,5 @@ yarn dev ## Build ```bash -./build.sh +./scripts/build.sh ``` diff --git a/build.sh b/build.sh deleted file mode 100755 index c12d2a7c..00000000 --- a/build.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash - -source ~/.nvm/nvm.sh -source ~/.sdkman/bin/sdkman-init.sh - -# Frontend -nvm use -if yarn build; then - # Backend - sdk use java 11.0.21-tem - ./mvnw clean package -P prod -Dmaven.test.skip=true -Darguments="-DskipTests -Dmaven.deploy.skip=true" -fi diff --git a/init.sh b/init.sh deleted file mode 100755 index 8bb15ec4..00000000 --- a/init.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -source ~/.nvm/nvm.sh -source ~/.sdkman/bin/sdkman-init.sh - -# Frontend -nvm install -npm i -g yarn -yarn -yarn prepare -yarn predev - -# Backend -sdk install java 11.0.21-tem -sdk use java 11.0.21-tem -cp -u src/main/resources/config/application-dev.example.yml src/main/resources/config/application-dev.yml diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 00000000..abd485fc --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,54 @@ +#!/usr/bin/env bash + +echo "GLC Bulding Tool" +echo "" +echo "0 -> package" +echo "1 -> shapshot" +echo "2 -> release" +echo "" + +read -p "Choose build type: " choice + +init () { + echo "--- Initialize ---" + source ./scripts/init.sh +} + +package () { + echo "--- Package ---" + ./mvnw clean package -P prod -Dmaven.test.skip=true -Darguments="-DskipTests -Dmaven.deploy.skip=true" +} + +snapshot () { + echo "--- Snapshot ---" + ./mvnw clean package deploy -P prod -Dmaven.test.skip=true -Darguments="-DskipTests -Dmaven.deploy.skip=true" +} + +release () { + echo "--- Release ---" + ./mvnw clean package release:prepare release:perform -P prod -Dmaven.test.skip=true -Darguments="-DskipTests -Dmaven.deploy.skip=true" +} + +case $choice in + + 0) + init + if yarn build; then package; fi + ;; + + 1) + init + if yarn build; then snapshot; fi + ;; + + 2) + init + if yarn build; then release; fi + ;; + + *) + echo "Unknown choice" + ;; + +esac +echo "GLC Builder" diff --git a/scripts/init.sh b/scripts/init.sh new file mode 100755 index 00000000..13581bfe --- /dev/null +++ b/scripts/init.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +source ~/.nvm/nvm.sh +source ~/.sdkman/bin/sdkman-init.sh + +# Frontend +nvm install +npm i -g yarn +yarn +yarn prepare +yarn predev + +# Backend +if ! sdk env; then + sdk env install +fi +if [ ! -f "src/main/resources/config/application-dev.yml" ]; then + cp -u src/main/resources/config/application-dev.example.yml src/main/resources/config/application-dev.yml +fi