← 活動記録一覧

FACTUAL ACTIVITY RECORD · 実際の作業をもとにした活動記録

GCP resourceを個別の削除保護へ移す

一律plan拒否をやめ、長寿命resourceごとのnative protectionを使う

対象期間:

目的

foundation workflowを一つにしたことで、正常な更新にも一律でdelete/replaceを拒否するgateより、resourceの性質に合わせた保護が必要になった。意図しない削除を止めつつ、同じstateから修正を続けられる構成へ改める必要があった。

実装

長寿命resourceへTerraformのprevent_destroyまたはproviderのdeletion_protectionを個別に設定した。対象にはAPI、IAM、Model Armor template、Cloud Run、API Gatewayなど、それぞれが対応する保護方法を使った。

workflowのdelete/replace一律停止は外し、通常planは同じrun内で適用できるようにした。apply失敗時は自動rollbackせず、現在のTerraform stateから原因を修正して再plan・再applyする契約を仕様と検証へ反映した。

workflow全体の一律停止ではなく、長寿命resource自身へ削除保護を持たせた。

図を描画しています…

確認したこと

確認結果

foundation-targets.txtと静的検証で、foundation経路の対象と個別保護の存在を確認した。

Terraform format、validate、GCP検証、仕様監査、差分検査が成功した。

意図的な削除手順と実providerによる保護動作はcutoff時点では実行していない。

完了とした根拠

一律gateを外した後も、長寿命resourceごとの保護とstate継続方針を静的に確認できた時点で完了とした。