GitHub Actionsでterraform CD/CD環境を構築する
概要 terraformでGoogle Cloudのリソースを管理し、GitHub ActionsによるCI/CDを構築するまでの手順をまとめます。 更に以下の要件を実現します。 Credentialを用いず、Workload Identity連携でサービスアカウントの認証をする Pull Requestをオープンした際、terraform plan結果のを自動でコメントする 1. gcloud CLIのセットアップ インストール ログイン 1 $ gcloud auth application-default login 作業するGoogle Cloudプロジェクトの権限を持つアカウントでログインする 2. GCSバケットの作成 tfstateファイルの置き場となるバケットを作成する 3. tfファイルの配置 以下のリソースを定義したtfファイルを配置する 手順2で作成したバケットのimport GitHub Actionsが用いるサービスアカウント GitHub Workload Identity連携の有効化 1 2 3 4 5 6 7 8 . ├── README.md ├── locals.tf ├── main.tf ├── modules │ └── workload_identity │ └── main.tf └── provider.tf locals.tf 1 2 3 4 5 # 定数の定義 locals { project_id = "your-project-name" # UPDATE HERE region = "asia-northeast1" } provider....