37 lines
863 B
Bash
Executable File
37 lines
863 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
REPO_ROOT="$(cd "$(dirname "$0")"/.. && pwd)"
|
|
FRONTEND_DIR="$REPO_ROOT/frontend"
|
|
CLEAN="${CLEAN:-0}"
|
|
|
|
cd "$FRONTEND_DIR"
|
|
echo "[frontend] repo: $REPO_ROOT"
|
|
echo "[frontend] dir: $FRONTEND_DIR"
|
|
|
|
if ! command -v node >/dev/null 2>&1; then
|
|
echo "[frontend] ERROR: node not found" >&2
|
|
exit 1
|
|
fi
|
|
if ! command -v npm >/dev/null 2>&1; then
|
|
echo "[frontend] ERROR: npm not found" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "[frontend] node: $(node -v)"
|
|
echo "[frontend] npm: $(npm -v)"
|
|
|
|
if [[ "$CLEAN" == "1" ]]; then
|
|
echo "[frontend] CLEAN=1 -> removing node_modules and .next/.turbo"
|
|
rm -rf node_modules .next .turbo
|
|
fi
|
|
|
|
if [[ -f package-lock.json ]]; then
|
|
echo "[frontend] detected package-lock.json -> using npm ci"
|
|
npm ci
|
|
else
|
|
echo "[frontend] no lockfile -> using npm install"
|
|
npm install
|
|
fi
|
|
|
|
echo "[frontend] setup completed." |