#!/usr/bin/env bash set -euo pipefail PROJECT_DIR="${DEPLOY_PROJECT_DIR:-/www/wwwroot/next.zizaifutian.com/admin}" FRONT_DIR="${DEPLOY_FRONT_DIR:-front}" BRANCH="${DEPLOY_BRANCH:-}" NODE_BIN_DIR="${DEPLOY_NODE_BIN_DIR:-}" if [ -n "$NODE_BIN_DIR" ]; then export PATH="$NODE_BIN_DIR:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH" else export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH" fi echo "node: $(command -v node || true)" node -v echo "pnpm: $(command -v pnpm || true)" pnpm -v cd "$PROJECT_DIR" if [ -n "$BRANCH" ]; then git fetch origin "$BRANCH" if git show-ref --verify --quiet "refs/heads/$BRANCH"; then git checkout "$BRANCH" else git checkout -b "$BRANCH" "origin/$BRANCH" fi git pull --ff-only origin "$BRANCH" else git pull --ff-only fi cd "$FRONT_DIR" if command -v corepack >/dev/null 2>&1; then corepack enable >/dev/null 2>&1 || true fi if [ -f pnpm-lock.yaml ]; then pnpm install --frozen-lockfile else pnpm install fi pnpm build