#!/usr/bin/env bash # Regenerates ci/pnpm-lock.yaml: the lockfile of Signage assembled into the pinned platform. Run it # after changing Signage's dependencies or ci/platform.env, and commit the result. CI installs with # --frozen-lockfile, so a stale lockfile fails there rather than resolving anything new. # # bash ci/update-lock.sh # # Uses the platform's own pinned pnpm (its packageManager field) through Corepack. set -Eeuo pipefail root="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)" work="$(mktemp -d)" trap 'rm -rf "$work"' EXIT bash "$root/ci/assemble.sh" --allow-missing-lock "$work/workspace" cd "$work/workspace" corepack enable >/dev/null 2>&1 || true corepack install >/dev/null pnpm install --lockfile-only cp pnpm-lock.yaml "$root/ci/pnpm-lock.yaml" echo "update-lock: wrote ci/pnpm-lock.yaml"