CI/CD
.github/workflows/pve_cicd.yaml で Terraform の plan / apply を実行する。
self-hosted runner 上で動作し、terraform/ を作業ディレクトリとして GCS バックエンドを使う。
| トリガー | ジョブ | 内容 |
|---|---|---|
| PR 作成・更新 | terraform-plan |
fmt / validate / plan |
main への push |
terraform-apply |
apply(production 環境) |
| workflow_dispatch | plan または apply | 手動実行 |
パスフィルタは terraform/** と workflow ファイル自身。docs/ だけの変更では plan / apply は走らない。
必要な GitHub 設定
Secrets
| 名前 | 用途 |
|---|---|
GCP_WORKLOAD_IDENTITY_PROVIDER |
Workload Identity Federation プロバイダ |
PROXMOX_ENDPOINT |
Proxmox API エンドポイント |
PROXMOX_API_TOKEN |
Proxmox API トークン |
PROXMOX_SSH_PASSWORD |
Proxmox ノード SSH パスワード |
GCP 認証は Workload Identity Federation により、GitHub Actions から GCS バケット pve-state へ直接アクセスする。