summaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/pack.sh
diff options
context:
space:
mode:
Diffstat (limited to 'packages/taler-wallet-webextension/pack.sh')
-rwxr-xr-xpackages/taler-wallet-webextension/pack.sh54
1 files changed, 47 insertions, 7 deletions
diff --git a/packages/taler-wallet-webextension/pack.sh b/packages/taler-wallet-webextension/pack.sh
index e762ab867..f83948a4d 100755
--- a/packages/taler-wallet-webextension/pack.sh
+++ b/packages/taler-wallet-webextension/pack.sh
@@ -1,6 +1,7 @@
#!/usr/bin/env bash
# This file is in the public domain.
+ENV=$1
set -eu
if [[ ! -e package.json ]]; then
@@ -8,15 +9,54 @@ if [[ ! -e package.json ]]; then
exit 1
fi
-vers_manifest=$(jq -r '.version' manifest.json)
+[[ "$ENV" == "prod" || "$ENV" == "dev" ]] || { echo "first argument must be prod or dev"; exit 1; }
+vers_manifest=$(jq -r '.version' manifest-common.json)
+
+
+# Create version form Manifest v2
+zipfile="taler-wallet-webextension-${vers_manifest}.zip"
+
+TEMP_DIR=$(mktemp -d)
+jq -s 'add | .name = "GNU Taler Wallet" ' manifest-common.json manifest-v2.json > $TEMP_DIR/manifest.json
+cp -r static $TEMP_DIR
+cp -r dist/prod $TEMP_DIR/dist
+
+find $TEMP_DIR/dist \( -name "test.*" -o -name "*.test.*" -o -name "stories.*" -o -name "*.dev.*" \) -delete
+[[ "$ENV" == "prod" ]] && find $TEMP_DIR/dist \( -name "*.map" \) -delete
+find $TEMP_DIR/dist -type d -empty -delete
+
+(cd $TEMP_DIR && zip -q -r "$zipfile" dist static manifest.json)
+
+mkdir -p extension/v2
+mv "$TEMP_DIR/$zipfile" ./extension/v2/
+rm -rf $TEMP_DIR
+# also provide unpacked version
+rm -rf extension/v2/unpacked
+mkdir -p extension/v2/unpacked
+(cd extension/v2/unpacked && unzip -q ../$zipfile)
+echo "Packed webextension: extension/v2/$zipfile"
+cp -rf src extension/v2/unpacked
+
+# Create version form Manifest v3
zipfile="taler-wallet-webextension-${vers_manifest}.zip"
TEMP_DIR=$(mktemp -d)
-jq '. | .name = "GNU Taler Wallet" ' manifest.json > $TEMP_DIR/manifest.json
-cp -r dist static $TEMP_DIR
-(cd $TEMP_DIR && zip -r "$zipfile" dist static manifest.json)
-mkdir -p extension
-mv "$TEMP_DIR/$zipfile" ./extension/
+jq -s 'add | .name = "GNU Taler Wallet" ' manifest-common.json manifest-v3.json > $TEMP_DIR/manifest.json
+cp -r static $TEMP_DIR
+cp -r dist/prod $TEMP_DIR/dist
+cp -r service_worker.js $TEMP_DIR
+
+find $TEMP_DIR/dist \( -name "test.*" -o -name "*.test.*" -o -name "stories.*" -o -name "*.dev.*" \) -delete
+[[ "$ENV" == "prod" ]] && find $TEMP_DIR/dist \( -name "*.map" \) -delete
+find $TEMP_DIR/dist -type d -empty -delete
+
+(cd $TEMP_DIR && zip -q -r "$zipfile" dist static manifest.json service_worker.js)
+mkdir -p extension/v3
+mv "$TEMP_DIR/$zipfile" ./extension/v3/
rm -rf $TEMP_DIR
-echo "Packed webextension: extension/$zipfile"
+# also provide unpacked version
+rm -rf extension/v3/unpacked
+mkdir -p extension/v3/unpacked
+(cd extension/v3/unpacked && unzip -q ../$zipfile)
+echo "Packed webextension: extension/v3/$zipfile"