Cloudflare Pages 自动发布 Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: 将 main 分支的 WorkBuddy 网站自动构建并发布到 Cloudflare Pages。
Architecture: GitHub Actions 在推送到 main 后使用 Node 22 安装锁定依赖、构建 VitePress 静态文件,并通过 Cloudflare 专用 API Token 将 docs/.vitepress/dist 发布到同名 Pages 项目。运行时生成的项目根目录 .vitepress/ 缓存只保留在本机。
Tech Stack: GitHub Actions、GitHub Pages、VitePress 1.6、Node.js 22。
Global Constraints
- 发布分支固定为
main。 - 发布目录固定为
docs/.vitepress/dist。 - 不提交本地 Vite 缓存
.vitepress/。 - 不改变网站内容或导航。
Task 1: 配置 Cloudflare Pages 构建与部署
Files:
- Create:
.github/workflows/deploy-pages.yml - Modify:
.gitignore
Interfaces:
Consumes:
npm ci与npm run docs:build。Produces: Cloudflare Pages 生产部署,路径为
docs/.vitepress/dist。[ ] Step 1: 创建 GitHub Actions 工作流
工作流在 push 到 main 或手动触发时运行,依次执行 checkout、Node 22、npm ci、npm run docs:build,并在 GitHub 配置了 CLOUDFLARE_API_TOKEN 时调用 Cloudflare Pages 部署。
- [ ] Step 2: 忽略根目录运行缓存
在 .gitignore 新增 .vitepress/,避免本地预览生成的缓存进入提交。
- [ ] Step 3: 本地构建验证
运行:npm test && npm run docs:build && git diff --check
预期:测试与构建全部通过,静态输出目录存在。
- [ ] Step 4: 提交并推送
提交工作流、忽略规则与当前尚未推送的案例更新,推送到 origin/main;GitHub Actions 随即执行发布。