From 8171646b9977c04c4df43cfff8df4101eb9b9a30 Mon Sep 17 00:00:00 2001
From: Benoit Lavenier <benoit.lavenier@e-is.pro>
Date: Mon, 4 Nov 2019 17:45:25 +0100
Subject: [PATCH] [fix] Build: fix grep expression (take only one version)

---
 github.sh  | 19 +++++++++----------
 release.sh |  2 +-
 2 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/github.sh b/github.sh
index 1d83811b..68a4fed4 100755
--- a/github.sh
+++ b/github.sh
@@ -9,11 +9,10 @@ then
 fi
 
 ### Get version to release
-current=`grep -P "version\": \"\d+.\d+.\d+(\w*)" package.json | grep -oP "\d+.\d+.\d+(\w*)"`
-if [[ "_$version" != "_" ]]; then
-  echo "ERROR: Unable to read 'version' in the file 'package.json'."
-  echo " - Make sure the file 'package.json' exists and is readable."
-  exit 1
+current=`grep -P "version\": \"\d+.\d+.\d+(\w*)" package.json | grep -m 1 -oP "\d+.\d+.\d+(\w*)"`
+if [[ "_$current" == "_" ]]; then
+  echo "Unable to read the current version in 'package.json'. Please check version format is: x.y.z (x and y should be an integer)."
+  exit 1;
 fi
 echo "Current version: $current"
 
@@ -53,10 +52,10 @@ case "$1" in
         prerelease="false"
       fi
 
-    description=`echo $2`
-    if [[ "_$description" = "_" ]]; then
-        description="Release v$current"
-    fi
+      description=`echo $2`
+      if [[ "_$description" = "_" ]]; then
+          description="Release v$current"
+      fi
 
       result=`curl -s -H ''"$GITHUT_AUTH"'' "$REPO_API_URL/releases/tags/v$current"`
       release_url=`echo "$result" | grep -P "\"url\": \"[^\"]+" | grep -oP "https://[A-Za-z0-9/.-]+/releases/\d+"`
@@ -76,7 +75,7 @@ case "$1" in
       echo " - tag: v$current"
       echo " - description: $description"
       result=`curl -H ''"$GITHUT_AUTH"'' -s $REPO_API_URL/releases -d '{"tag_name": "v'"$current"'","target_commitish": "master","name": "'"$current"'","body": "'"$description"'","draft": false,"prerelease": '"$prerelease"'}'`
-      echo "DEBUG - $result"
+      #echo "DEBUG - $result"
       upload_url=`echo "$result" | grep -P "\"upload_url\": \"[^\"]+"  | grep -oP "https://[A-Za-z0-9/.-]+"`
 
       if [[ "_$upload_url" = "_" ]]; then
diff --git a/release.sh b/release.sh
index a9e591b6..74528528 100755
--- a/release.sh
+++ b/release.sh
@@ -11,7 +11,7 @@ fi
 DIRNAME=`pwd`
 
 ### Get current version (package.json)
-current=`grep -oP "version\": \"\d+.\d+.\d+((a|b)[0-9]+)?" package.json | grep -oP "\d+.\d+.\d+((a|b)[0-9]+)?"`
+current=`grep -oP "version\": \"\d+.\d+.\d+((a|b)[0-9]+)?" package.json | grep -m 1 -oP "\d+.\d+.\d+((a|b)[0-9]+)?"`
 if [[ "_$current" == "_" ]]; then
   echo "Unable to read the current version in 'package.json'. Please check version format is: x.y.z (x and y should be an integer)."
   exit 1;
-- 
GitLab