sync current state
This commit is contained in:
+46
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
UUID="user-switcher@felixfoertsch.de"
|
||||
STAGE_DIR="${ROOT_DIR}/.build/release/${UUID}"
|
||||
DIST_DIR="${ROOT_DIR}/dist"
|
||||
ZIP_PATH="${DIST_DIR}/${UUID}.shell-extension.zip"
|
||||
|
||||
if ! command -v msgfmt >/dev/null 2>&1; then
|
||||
echo "msgfmt is required to build release translations (install gettext)." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! command -v zip >/dev/null 2>&1; then
|
||||
echo "zip is required to create the release archive." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rm -rf "$STAGE_DIR"
|
||||
mkdir -p "$STAGE_DIR"
|
||||
mkdir -p "$DIST_DIR"
|
||||
|
||||
cp "$ROOT_DIR/metadata.json" "$ROOT_DIR/extension.js" "$STAGE_DIR/"
|
||||
|
||||
for lang in en de es fr; do
|
||||
po_path="${ROOT_DIR}/locale/${lang}/LC_MESSAGES/user-switcher.po"
|
||||
mo_dir="${STAGE_DIR}/locale/${lang}/LC_MESSAGES"
|
||||
mo_path="${mo_dir}/user-switcher.mo"
|
||||
|
||||
if [[ ! -f "$po_path" ]]; then
|
||||
echo "missing translation source: $po_path" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "$mo_dir"
|
||||
msgfmt "$po_path" -o "$mo_path"
|
||||
done
|
||||
|
||||
rm -f "$ZIP_PATH"
|
||||
(
|
||||
cd "$STAGE_DIR"
|
||||
zip -qr "$ZIP_PATH" metadata.json extension.js locale
|
||||
)
|
||||
|
||||
echo "Release package created: $ZIP_PATH"
|
||||
Reference in New Issue
Block a user