name: Deploy on: push: branches: - main concurrency: group: deploy-production-main cancel-in-progress: false jobs: deploy: runs-on: ubuntu-latest permissions: contents: read steps: - name: Check out code uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: 20 cache: npm - name: Install dependencies run: npm ci - name: Lint run: npm run lint - name: Build run: npm run build - name: Set up Supabase CLI uses: supabase/setup-cli@v1 with: version: 2.101.0 - name: Link Supabase project env: SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_ACCESS_TOKEN }} SUPABASE_PROJECT_REF: ${{ secrets.SUPABASE_PROJECT_REF }} SUPABASE_DB_PASSWORD: ${{ secrets.SUPABASE_DB_PASSWORD }} run: supabase link --project-ref "$SUPABASE_PROJECT_REF" --password "$SUPABASE_DB_PASSWORD" - name: Apply pending migrations and seed baseline data env: SUPABASE_ACCESS_TOKEN: ${{ secrets.SUPABASE_ACCESS_TOKEN }} run: supabase db push --linked --include-seed