From fb93cb79ccc2ba883f1720c991bc4f327c9f5271 Mon Sep 17 00:00:00 2001
From: dmitry <dmitry.puzyrkov@demlabs.net>
Date: Thu, 4 Jul 2024 12:24:20 +0700
Subject: [PATCH] ...

---
 pack.sh | 61 ++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 34 insertions(+), 27 deletions(-)

diff --git a/pack.sh b/pack.sh
index f57ac55..a2b2963 100755
--- a/pack.sh
+++ b/pack.sh
@@ -1,23 +1,13 @@
-#!/bin/bash
-set -e
+#!/bin/bash -e
 
-SOURCE=${BASH_SOURCE[0]}
-while [ -L "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
-  TARGET=$(readlink "$SOURCE")
-  if [[ $TARGET == /* ]]; then
-    echo "SOURCE '$SOURCE' is an absolute symlink to '$TARGET'"
-    SOURCE=$TARGET
-  else
-    DIR=$( dirname "$SOURCE" )
-    echo "SOURCE '$SOURCE' is a relative symlink to '$TARGET' (relative to '$DIR')"
-    SOURCE=$DIR/$TARGET # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
-  fi
-done
-echo "SOURCE is '$SOURCE'"
-RDIR=$( dirname "$SOURCE" )
-DIR=$( cd -P "$( dirname "$SOURCE" )" >/dev/null 2>&1 && pwd )
-HERE="$DIR"
+set -e
 
+if [ ${0:0:1} = "/" ]; then
+	HERE=`dirname $0`
+else
+	CMD=`pwd`/$0
+	HERE=`dirname ${CMD}`
+fi
 
 export SOURCES=${HERE}/../
 
@@ -30,9 +20,9 @@ containsElement () {
 
 Help()
 {
-   echo "cellframe-node pack"
-   echo "Usage: pack.sh [--target linux | windows | android] [release | debug]"
-   echo "--sign PATH should provide a path to file with env variables ANDROID_KEYSTORE_PATH, ANDROID_KEYSTORE_ALIAS, ANDROID_KEYSTORE_PASS for apk signing"
+   echo "cellframe-dashboard pack"
+   echo "Usage: pack.sh [--target ${TARGETS}] [${BUILD_TYPES}]  [OPTIONS]"
+   echo "--sign PATH should provide a path to file with env variables"
 }
 
 POSITIONAL_ARGS=()
@@ -49,6 +39,11 @@ while [[ $# -gt 0 ]]; do
       shift # past argument
       shift # past value
       ;;
+    -s|--sign)
+      SIGNCONFIG="$2"
+      shift # past argument
+      shift # past value
+      ;;
     *)
       POSITIONAL_ARGS+=("$1") # save positional arg
       shift # past argument
@@ -60,13 +55,11 @@ set -- "${POSITIONAL_ARGS[@]}" # restore positional parameters
 
 #all base logic from here
 
-
 BUILD_TYPE="${1:-release}"
 BUILD_OPTIONS="${@:2}"
 
 BUILD_TARGET="${TARGET:-linux}"
 
-
 #validate input params
 . ${HERE}/validate.sh
 VALIDATE_TARGET $TARGET
@@ -77,15 +70,29 @@ BUILD_DIR=${PWD}/build_${BUILD_TARGET}_${BUILD_TYPE}/build
 OUT_DIR=${PWD}/build_${BUILD_TARGET}_${BUILD_TYPE}/
 
 #we care only about dist dir, i think
-[ ! -d ${DIST_DIR} ] && { echo "No build found: $BRAND $BUILD_TARGET" && exit 255; }
-
-
+[ ! -d ${DIST_DIR} ] && { echo "No build found: $BUILD_TARGET" && exit 255; }
+
+
+if [ -z "$SIGNCONFIG" ]
+then
+      echo "No SIGNCONFIG provided. Packages will NOT be signed"
+      
+else
+  if [ -f "$SIGNCONFIG" ]
+  then
+    echo "Using sign-config from [${SIGNCONFIG}]"
+    source $SIGNCONFIG
+  else
+    echo "[${SIGNCONFIG}] sign config not found"
+    exit 255
+  fi
+fi
 
 echo "Pack [${BUILD_TYPE}] binaries for [$BUILD_TARGET] from [${DIST_DIR}] to [${OUT_DIR}]"
 
 . ${HERE}/packaging/${BUILD_TARGET}.sh
 
-PACK ${DIST_DIR} ${BUILD_DIR} ${OUT_DIR}
+PACK ${DIST_DIR} ${BUILD_DIR} ${OUT_DIR} ${BUILD_TYPE}
 
 
 
-- 
GitLab