Skip to content

Commit 0a9174f

Browse files
iamjr15claude
andcommitted
ci: add GitHub Actions workflow for Cloudflare Workers
Auto-deploys api-worker and preview-worker on push to main when their respective directories change. Also supports manual trigger via workflow_dispatch. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent bb21ea3 commit 0a9174f

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: Deploy Cloudflare Workers
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'api-worker/**'
9+
- 'preview-worker/**'
10+
- '.github/workflows/cloudflare-workers.yml'
11+
workflow_dispatch:
12+
13+
jobs:
14+
deploy-api-worker:
15+
runs-on: ubuntu-latest
16+
name: Deploy API Worker
17+
if: ${{ github.event_name == 'workflow_dispatch' || contains(github.event.head_commit.modified, 'api-worker/') || contains(github.event.head_commit.added, 'api-worker/') }}
18+
steps:
19+
- uses: actions/checkout@v4
20+
21+
- name: Setup Node.js
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version: '20'
25+
26+
- name: Install dependencies
27+
working-directory: ./api-worker
28+
run: npm ci
29+
30+
- name: Deploy to Cloudflare Workers
31+
uses: cloudflare/wrangler-action@v3
32+
with:
33+
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
34+
workingDirectory: ./api-worker
35+
36+
deploy-preview-worker:
37+
runs-on: ubuntu-latest
38+
name: Deploy Preview Worker
39+
if: ${{ github.event_name == 'workflow_dispatch' || contains(github.event.head_commit.modified, 'preview-worker/') || contains(github.event.head_commit.added, 'preview-worker/') }}
40+
steps:
41+
- uses: actions/checkout@v4
42+
43+
- name: Setup Node.js
44+
uses: actions/setup-node@v4
45+
with:
46+
node-version: '20'
47+
48+
- name: Install dependencies
49+
working-directory: ./preview-worker
50+
run: npm ci
51+
52+
- name: Deploy to Cloudflare Workers
53+
uses: cloudflare/wrangler-action@v3
54+
with:
55+
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
56+
workingDirectory: ./preview-worker

0 commit comments

Comments
 (0)