name: deploy on: push: branches: - dev - production workflow_dispatch: concurrency: ${{ github.workflow }}-${{ github.ref }} jobs: deploy: runs-on: blacksmith-4vcpu-ubuntu-2404 steps: - uses: actions/checkout@v3 - uses: ./.github/actions/setup-bun - uses: actions/setup-node@v4 with: node-version: "24" # Workaround for Pulumi version conflict: # GitHub runners have Pulumi 3.212.0+ pre-installed, which removed the -root flag # from pulumi-language-nodejs (see https://github.com/pulumi/pulumi/pull/21065). # SST 3.17.x uses Pulumi SDK 3.210.0 which still passes -root, causing a conflict. # Removing the system language plugin forces SST to use its bundled compatible version. # TODO: Remove when sst supports Pulumi >3.210.0 - name: Fix Pulumi version conflict run: sudo rm -f /usr/local/bin/pulumi-language-nodejs - run: bun sst deploy --stage=${{ github.ref_name }} env: CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} PLANETSCALE_SERVICE_TOKEN_NAME: ${{ secrets.PLANETSCALE_SERVICE_TOKEN_NAME }} PLANETSCALE_SERVICE_TOKEN: ${{ secrets.PLANETSCALE_SERVICE_TOKEN }} STRIPE_SECRET_KEY: ${{ github.ref_name == 'production' && secrets.STRIPE_SECRET_KEY_PROD || secrets.STRIPE_SECRET_KEY_DEV }}