#!/usr/bin/env bash set -euo pipefail cd "$(dirname "$0")/.." lint () { echo "::group::lint" pnpm lint echo "::endgroup::" } check () { echo "::group::typecheck" pnpm check echo "::endgroup::" } build () { echo "::group::build" pnpm build echo "::endgroup::" } no_local_overrides () { echo "::group::no-local-overrides" # Make sure no "link:" overrides are committed — those break every other clone if grep -q 'link:' package.json pnpm-workspace.yaml 2>/dev/null; then echo "Some packages are linked to local files!" exit 1 fi echo "::endgroup::" } steps="${*:-lint check no_local_overrides build}" for step in $steps; do "$step" done