概要
Terraform で作成された以下の AWS 上のリソース群
- AWS CodeBuild external_link の growi-official-image-builder- buildspec はプロジェクト側で apps/app/docker/codebuild/buildspec.ymlを指定
 
- buildspec はプロジェクト側で 
- OIDC 関連リソース
利用する側の情報
Terraform による管理
- ルートディレクトリは apps/app/docker/codebuild
管理ポリシー
- ステート(tfstate) は Terraform Cloud で管理する
- Terraform Cloud はステートの管理のみに利用し、リソースの変更が必要な場合は AWS リソースにアクセス可能な各開発者がローカルPCから apply する
- そのため Terraform Cloud へのアクセスは必須ではないが、もし必要であれば weseek organization への招待を、既に加入しているメンバーに依頼する
 
開発環境セットアップ手順
- Terraform 公式ドキュメント external_link を参考に Terraform CLI をセットアップする
- Win であれば WSL 上でのセットアップ(つまり Linux 向けマニュアル通りのセットアップ)を勧める
- terraformコマンドが動作するところまでで OK
 
- AWS 公式ドキュメント external_link を参考に、AWS CLI をセットアップする
- awsコマンドが動作するところまでで OK
 
- AWS 公式の Named profiles external_link のドキュメントを参考に、weseekという名前がついた profile を作成する- 動作確認
$ aws codebuild list-projects --profile weseek { "projects": [ "growi-official-image-builder" ] }
 
- 動作確認
適用手順
cd apps/app/docker/codebuild terraform init terraform apply
- Secrets Manager は入れ物だけを作るので、リソースを再作成した場合は buildspec.ymlが要求する secret 値を入れる必要がある
破棄手順
cd apps/app/docker/codebuild terraform destroy