name: Deploy Cloudflare Worker on: push: branches: - main permissions: contents: read concurrency: group: deploy-cloudflare-worker cancel-in-progress: true jobs: deploy: runs-on: ubuntu-latest timeout-minutes: 30 steps: - name: Check out repository uses: actions/checkout@v7 with: submodules: recursive - name: Set up Bun uses: oven-sh/setup-bun@v2 with: bun-version-file: package.json - name: Install dependencies run: bun install --frozen-lockfile --ignore-scripts - name: Build frontend run: bun run build:frontend - name: Deploy Worker uses: cloudflare/wrangler-action@v4 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} command: deploy packageManager: bun workingDirectory: backend