From 7a2c9cdcb0c04bdac5f1b976c9f2c9830ce7ba66 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Thu, 25 Jun 2026 18:31:54 +0100 Subject: [PATCH] ci: add vercel deploy step --- .tangled/workflows/deploy.yml | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .tangled/workflows/deploy.yml diff --git a/.tangled/workflows/deploy.yml b/.tangled/workflows/deploy.yml new file mode 100644 index 0000000..a62b4b2 --- /dev/null +++ b/.tangled/workflows/deploy.yml @@ -0,0 +1,34 @@ +# Deploy to Vercel. +# +# Pushes to `main` ship to production; pull requests targeting `main` get a +# preview deployment. The Vercel CLI pulls project settings + env from Vercel, +# builds locally, then uploads the prebuilt `.vercel/output`. +when: + - event: ["push"] + branch: ["main"] + - event: ["pull_request"] + branch: ["main"] +engine: microvm +image: nixos +dependencies: + - pnpm + - nodejs +steps: + - name: "Install dependencies" + command: pnpm install --frozen-lockfile + + - name: "Deploy" + command: | + set -euo pipefail + + if [ "$TANGLED_REF_NAME" = "main" ]; then + target="production" + prod_flag="--prod" + else + target="preview" + prod_flag="" + fi + + pnpm dlx vercel@latest pull --yes --environment="$target" --token="$VERCEL_TOKEN" + pnpm dlx vercel@latest build $prod_flag --token="$VERCEL_TOKEN" + pnpm dlx vercel@latest deploy --prebuilt $prod_flag --token="$VERCEL_TOKEN" -- 2.51.2