From c04129940b2f7d25bcfce51c636499585b0fdf6d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C3=ABl=20Minelli?= <michael@minelli.me>
Date: Thu, 21 Sep 2023 02:54:09 +0200
Subject: [PATCH] CI/CD => Correct sed command

---
 .gitlab-ci.yml                        | 17 +++++++++--------
 NodeApp/src/commander/CommanderApp.ts |  2 +-
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 22c1c3a..e55904f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -76,13 +76,14 @@ variables:
         - npm install
 
         # Set version number shown in CLI
-        - sed -r "s/(\.version[ ]*\([ ]*\').*(\'[ ]*\))/\1${VERSION}\2/g" src/commander/CommanderApp.ts > src/commander/CommanderApp.ts
+        - sed -i -r "s/\{\{VERSION\}\}/${VERSION}/g" src/commander/CommanderApp.ts
 
         # Decrypt env vars for production
         - |
             if [ $CI_COMMIT_REF_PROTECTED == "true" ]; then
                 echo "Decrypt production env vars"
-                sed -r "s/(\,(\n)?[]+)?(DOTENV_KEY[ ]*:[ ]*[\'\"\`])[^'\"\`]*([\'\"\`])//g" src/app.ts > src/app.ts;
+                sed -i -r "s/(DOTENV_KEY[ ]*:[ ]*[\'\"\`])[^'\"\`]*([\'\"\`])([ ]*\,)?//g" src/app.ts
+                sed -i -r "s/,[\ \n]*\}/\}/g" src/app.ts
                 npx dotenv-vault local decrypt "${DOTENV_PROD_KEY}" > .env
             fi
 
@@ -91,16 +92,16 @@ variables:
 
         # Build binaries
         ## macOS
-        - npx pkg . -t node18-macos-arm64 --output $BIN_FILE_MACOS_ARM64 --no-bytecode --public-packages "*" --public
-        - npx pkg . -t node18-macos-x64 --output $BIN_FILE_MACOS_X64 --no-bytecode --public-packages "*" --public
+        - npx pkg . -t node18-macos-arm64 --output $BIN_FILE_MACOS_ARM64 --no-bytecode --compress Brotli --public-packages "*" --public
+        - npx pkg . -t node18-macos-x64 --output $BIN_FILE_MACOS_X64 --no-bytecode --compress Brotli --public-packages "*" --public
 
         ## Linux
-        - npx pkg . -t node18-linuxstatic-arm64 --output $BIN_FILE_LINUX_ARM64 --no-bytecode --public-packages "*" --public
-        - npx pkg . -t node18-linuxstatic-x64 --output $BIN_FILE_LINUX_X64 --no-bytecode --public-packages "*" --public
+        - npx pkg . -t node18-linuxstatic-arm64 --output $BIN_FILE_LINUX_ARM64 --no-bytecode --compress Brotli --public-packages "*" --public
+        - npx pkg . -t node18-linuxstatic-x64 --output $BIN_FILE_LINUX_X64 --no-bytecode --compress Brotli --public-packages "*" --public
 
         ## Windows
-        - npx pkg . -t node18-win-arm64 --output $BIN_FILE_WINDOWS_ARM64 --no-bytecode --public-packages "*" --public
-        - npx pkg . -t node18-win-x64 --output $BIN_FILE_WINDOWS_X64 --no-bytecode --public-packages "*" --public
+        - npx pkg . -t node18-win-arm64 --output $BIN_FILE_WINDOWS_ARM64 --no-bytecode --compress Brotli --public-packages "*" --public
+        - npx pkg . -t node18-win-x64 --output $BIN_FILE_WINDOWS_X64 --no-bytecode --compress Brotli --public-packages "*" --public
 
 
 .sign_macos:
diff --git a/NodeApp/src/commander/CommanderApp.ts b/NodeApp/src/commander/CommanderApp.ts
index bc308ad..91ba8fe 100644
--- a/NodeApp/src/commander/CommanderApp.ts
+++ b/NodeApp/src/commander/CommanderApp.ts
@@ -12,7 +12,7 @@ class CommanderApp {
         this.program
         .name('dojo')
         .description('CLI of the Dojo application')
-        .version('DEV')
+        .version('{{VERSION}}')
         .showHelpAfterError()
         .configureHelp({
                            showGlobalOptions: true,
-- 
GitLab