publish.yml (1.07 KB)
name: Publish
on:
  push:
    branches:
      - main
concurrency:
  group: publish
  cancel-in-progress: false
env:
  # Alchemy Vars
  STAGE: prod
  GITHUB_SHA: ${{ github.sha }}
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  CLOUDFLARE_EMAIL: ${{ secrets.CLOUDFLARE_EMAIL }}
  CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
  CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
  ALCHEMY_PASSWORD: ${{ secrets.ALCHEMY_PASSWORD }}
  ALCHEMY_STATE_TOKEN: ${{ secrets.ALCHEMY_STATE_TOKEN }}
  # App Secrets
  BETTER_AUTH_SECRET: ${{ secrets.BETTER_AUTH_SECRET }}
jobs:
  publish:
    runs-on: ubuntu-latest
    permissions:
      contents: read
    steps:
      - uses: actions/checkout@v4
      - name: Setup pnpm
        uses: pnpm/action-setup@v3
        with:
          version: "10"
      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: "24"
          cache: pnpm
      - name: Install dependencies
        shell: bash
        run: pnpm install
      - name: Deploy to Production
        run: pnpm --filter ./apps/web run deploy