Files
yucca/packages/docs/.mise/tasks/deploy
T

25 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
#MISE description="Publish packages/docs/build to Cloudflare Pages (ENVIRONMENT=prod|dev, TF_VAR_stage=pr-<n> for a preview)"
#MISE dir="{{config_root}}/../.."
set -euo pipefail
export ENVIRONMENT="${ENVIRONMENT:-dev}"
export TF_VAR_stage="${TF_VAR_stage:-}"
export OP_ENV_FILE=tf/pages/.env
[ -d packages/docs/build ] || { echo "docs:deploy: packages/docs/build is missing — run mise //packages/docs:build first" >&2; exit 1; }
tf/op-run.sh terragrunt run --all apply --non-interactive --parallelism 1 --working-dir tf/pages/docs
outputs="$(op run --env-file="$OP_ENV_FILE" --no-masking -- terragrunt output -json --working-dir tf/pages/docs/site)"
project="$(jq -r .pages_project_name.value <<<"$outputs")"
branch="$(jq -r .pages_branch.value <<<"$outputs")"
hostname="$(jq -r .hostname.value <<<"$outputs")"
tf/op-run.sh wrangler pages deploy packages/docs/build --project-name="$project" --branch="$branch" --commit-dirty=true
echo "deployed https://${hostname}"
if [ -n "${GITHUB_OUTPUT:-}" ]; then
echo "hostname=${hostname}" >> "$GITHUB_OUTPUT"
fi