概要
Terraform コードの PR 時静的検証を CI に追加(AWS 認証不要)。infra 配下の terraform ファイル変更時のみ実行。markdown-lint.yml と同じ dorny/paths-filter + if: + concurrency + sticky comment 構成を踏襲。
実装内容
terraform fmt -check -recursive(整形ゲート)
- 各 root(
infra/shared/environments/dev / infra/environments/dev)で terraform init -backend=false → terraform validate
.terraform.lock.hcl 陳腐化検知(terraform init -lockfile=readonly)
- (任意)
tflint
- paths-filter は terraform ファイル限定(
infra/**/*.tf / infra/**/*.hcl / infra/**/*.tfvars / 当ワークフロー)。infra/** 全体だと infra/docs/ 配下の doc-only(.md)変更でも発火するため不可。concurrency でキャンセル
受入条件
関連
概要
Terraform コードの PR 時静的検証を CI に追加(AWS 認証不要)。infra 配下の terraform ファイル変更時のみ実行。
markdown-lint.ymlと同じdorny/paths-filter+if:+ concurrency + sticky comment 構成を踏襲。実装内容
terraform fmt -check -recursive(整形ゲート)infra/shared/environments/dev/infra/environments/dev)でterraform init -backend=false→terraform validate.terraform.lock.hcl陳腐化検知(terraform init -lockfile=readonly)tflintinfra/**/*.tf/infra/**/*.hcl/infra/**/*.tfvars/ 当ワークフロー)。infra/**全体だとinfra/docs/配下の doc-only(.md)変更でも発火するため不可。concurrency でキャンセル受入条件
infra/**/*.tf等)変更 PR で fmt/validate が実行され、整形・構文エラーで failinfra/docs/の .md のみ含む)ではスキップ(required check の permanent pending 回避)関連