第12章: GitHub Actions CI/CD とリアルタイム監視
12.1 GitHub Actions による完全自動デプロイ
main ブランチにマージされたら、テストを実行し、自動的に wrangler deploy を行うGitHub Actionsワークフローです。
.github/workflows/deploy.yml
name: Deploy Workers
on: push: branches: - main
jobs: deploy: runs-on: ubuntu-latest name: Deploy to Cloudflare Workers steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 cache: 'npm'
- name: Install dependencies run: npm ci
- name: Run Tests run: npm test
- name: Deploy with Wrangler uses: cloudflare/wrangler-action@v3 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}12.2 本番ログのリアルタイム監視(wrangler tail)
リリース直後や本番障害時、エッジで発生しているリクエストやエラーログをターミナルでリアルタイムにストリーミング監視できます。
# 全ログをリアルタイム表示npx wrangler tail
# HTTPステータスが4xxや5xxのエラーのみに絞り込むnpx wrangler tail --status error
# 特定の検索文字列を含むログのみ表示npx wrangler tail --search "Database error"12.3 緊急時の即時ロールバック(wrangler rollback)
バグを含むコードを本番デプロイしてしまった場合、GitのRevertを待たずに数秒で直前の安定バージョンへロールバックできます。
# 直前のデプロイバージョンへ差し戻すnpx wrangler rollback次章からは、いよいよ本ガイドのハイライトである 「Cloudflare × GCP(Google Cloud)のハイブリッド連携設計」 に突入します。
💡 用語解説コラム
[!NOTE] CI/CD (継続的インテグレーション / 継続的デプロイ)
コードをGitにpushした際、自動でテスト(CI)を実行し、合格したら本番へ自動反映(CD)するパイプライン。手動デプロイの手間とミスを撲滅します。
[!NOTE] 可観測性 (Observability)
システムの内部状態(ログ、メトリクス、トレース)から「今どこで何が起きているか」を正確に把握できる度合い。wrangler tailによるリアルタイム監視がこれに当たります。