Cloudflare Pages playbook
Pages プロジェクトの作成、Access ポリシーの順序、ロールバック手順までを一気通貫で。
API でプロジェクトを作る
差分管理がしやすいので、ダッシュボードを使わず API で完結させる。Account ID と Pages 用の API トークンを環境変数に入れておけば、リポジトリと一対一で再現できる。
curl -X POST \
"https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/pages/projects" \
-H "Authorization: Bearer $CF_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "name": "anoy-03", "production_branch": "main" }' Access ポリシーの順序
先に Bypass、次に Allow。順番が逆だと Bypass が効かない。
| Path | Decision | Identity |
|---|---|---|
/_assets/* | Bypass | Everyone |
/<proj>/public/* | Bypass | Everyone |
/ | Allow | @anoy.jp |
/<proj>/internal/* | Allow | @anoy.jp |
注意. Custom Domain を後から追加した場合、Access ポリシーは自動継承されない。明示的に再割り当てが必要。
デプロイの確認
初回 push 後、ビルドが https://<branch>.anoy-03.pages.dev に上がる。本番反映は GitHub Actions の deploy-prod.yml 経由で main ブランチ push をトリガに動く。所要時間は約 60〜90 秒。
ロールバック
Cloudflare ダッシュボード → Pages → 該当プロジェクト → Deployments タブから、過去のビルドを選んで「Rollback」。DNS は触らずに切替可能。GitHub の commit を revert する必要はない(ただし次のデプロイでまた同じバグが復活するので、必ず revert PR も同時に出すこと)。