Skip to content

Merge pull request #5542 from code-yeongyu/fix/web-stats-docs-skillsets #103

Merge pull request #5542 from code-yeongyu/fix/web-stats-docs-skillsets

Merge pull request #5542 from code-yeongyu/fix/web-stats-docs-skillsets #103

Workflow file for this run

name: Web Deploy (Cloudflare Workers)
on:
workflow_dispatch:
inputs:
environment:
description: "Wrangler environment (leave blank for default)"
required: false
default: ""
push:
branches: [master, dev]
paths:
- "packages/web/**"
- "docs/**"
- ".github/workflows/web-deploy.yml"
concurrency:
group: web-deploy-${{ github.ref }}
cancel-in-progress: false
jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: web-production
url: https://omo.dev
defaults:
run:
working-directory: packages/web
permissions:
contents: read
deployments: write
steps:
- uses: actions/checkout@v5
- uses: oven-sh/setup-bun@v2
with:
bun-version: "1.3.12"
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Build with OpenNext for Cloudflare
run: |
bun run prebuild
bunx opennextjs-cloudflare build
env:
NEXT_TELEMETRY_DISABLED: "1"
- name: Deploy to Cloudflare Workers
uses: cloudflare/wrangler-action@v4
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
workingDirectory: packages/web
command: ${{ inputs.environment && format('deploy --env {0}', inputs.environment) || 'deploy' }}
- name: Write job summary
if: always()
shell: bash
working-directory: .
env:
JOB_SUMMARY_TITLE: Web deploy
JOB_SUMMARY_STATUS: ${{ job.status }}
JOB_SUMMARY_DETAILS: |
- Builds the web app with OpenNext for Cloudflare.
- Deploys the Worker through Wrangler.
- Uses the requested Wrangler environment when provided.
JOB_SUMMARY_NEXT: Check build output first, then Wrangler authentication, account, or environment errors.
run: GITHUB_STEP_SUMMARY="$GITHUB_STEP_SUMMARY" bash .github/scripts/write-job-summary.sh