From 4f41b2f1397b5f305bdd29bbe991027830f2cda6 Mon Sep 17 00:00:00 2001
From: Benoit Lavenier <benoit.lavenier@e-is.pro>
Date: Tue, 17 May 2022 12:30:50 +0200
Subject: [PATCH] [enh] Add a release script

---
 release.sh | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)
 create mode 100644 release.sh

diff --git a/release.sh b/release.sh
new file mode 100644
index 00000000..f93b465c
--- /dev/null
+++ b/release.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+#RELEASE_OPTS="-DskipTests"
+RELEASE_OPTS=""
+
+# Rollback previous release, if need
+if [[ -f "pom.xml.releaseBackup" ]]; then
+    echo "**********************************"
+    echo "* Rollback previous release..."
+    echo "**********************************"
+    result=`mvn release:rollback`
+    failure=`echo "$result" | grep -m1 -P "\[INFO\] BUILD FAILURE"  | grep -oP "BUILD \w+"`
+    # rollback failed
+    if [[ ! "_$failure" = "_" ]]; then
+        echo "$result" | grep -P "\[ERROR\] "
+        exit 1
+    fi
+    echo "Rollback previous release [OK]"
+fi
+
+
+echo "**********************************"
+echo "* Preparing release..."
+echo "**********************************"
+mvn release:prepare --quiet -Darguments="${RELEASE_OPTS}"
+if [[ $? -ne 0 ]]; then
+    exit 1
+fi
+echo "Prepare release [OK]"
+
+
+echo "**********************************"
+echo "* Performing release..."
+echo "**********************************"
+mvn release:perform --quiet -Darguments="${RELEASE_OPTS}"
+if [[ $? -ne 0 ]]; then
+    exit 1
+fi
+echo "Perform release [OK]"
+
+
+
+
+mvn release:perform
\ No newline at end of file
-- 
GitLab