#!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" OUTPUT_PATH="${1:-${SCRIPT_DIR}/upgrade-package.zip}" SIGNATURE_PATH="${SCRIPT_DIR}/signature.sig" if [[ ! -f "${SIGNATURE_PATH}" ]]; then echo "missing signature file: ${SIGNATURE_PATH}" >&2 echo "generate a real signature.sig for manifest.json before building the package" >&2 exit 1 fi tmpdir="$(mktemp -d)" trap 'rm -rf "${tmpdir}"' EXIT cp "${SCRIPT_DIR}/manifest.json" "${tmpdir}/manifest.json" cp "${SIGNATURE_PATH}" "${tmpdir}/signature.sig" cp -R "${SCRIPT_DIR}/payload" "${tmpdir}/payload" rm -f "${OUTPUT_PATH}" ( cd "${tmpdir}" zip -rq "${OUTPUT_PATH}" manifest.json signature.sig payload ) echo "package built: ${OUTPUT_PATH}"