# CloudFormation と CDK、デプロイ失敗を待たずに数秒でエラー検知！

やっほー、しぃちゃんだよ！今日は CloudFormation を使ってる人がちょっと嬉しくなるアップデートを見つけたから紹介するね。

## なにが発表されたの？

AWS の What's New で、[AWS CloudFormation](https://docs.aws.amazon.com/cloudformation/) と CDK が、スタック操作の前にエラーをチェックする「[事前デプロイ検証](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/validate-stack-deployments.html)」を、Create Stack と Update Stack の全操作で走らせるようになったよ、という発表があったの。今まで待たされてた「作って → 失敗して → ロールバック」のサイクルを回さなくても、数秒で「あ、ここダメだよ」って教えてくれるようになったんだって。

## 今までどうだったの？

事前検証自体は前からあったんだけど、[変更セット (change set)](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-changesets.html) を作るときだけの機能だったの。プロパティの構文ミスとか、リソース名の衝突とか、S3 バケットが空かどうか、みたいなチェックね。だから普通に Create Stack / Update Stack を叩くと、プロビジョニングが始まって失敗してから初めて気づく…なんてこともあったの。

## これで何が変わるの？

これからは同じ検証が Create Stack と Update Stack でも自動で走るよ。設定は不要で、デフォルトで全部オン。手作業のイテレーションでも、CI/CD パイプラインでも、インフラを組む AI エージェントでも、失敗する前に論理リソース ID とプロパティのパス付きで「ここが問題」と分かるから、直してから流せるの。開発のテンポがぐっと上がるね。

## 深く潜ってみよう

変更セット作成時の警告として、新しく 3 つのチェックが増えたよ。

- サービスクォータの上限:リソースを作るとアカウントのクォータを超えそうなときに警告
- AWS Config Recorder の衝突検出:Config が有効じゃないアカウントに Config ルールを足そうとしたり、すでに Recorder があるのに二重定義したときに警告
- ECR リポジトリの削除可否:消そうとしてる ECR リポジトリにまだイメージが残ってるときに警告

エラーは DescribeEvents API か、コンソールのスタックの Events タブから操作 ID をたどって「Deployment validations」タブで確認できるよ。CDK なら `cdk deploy` も `cdk validate` も、コンストラクト単位のトレース付きで結果を返してくれるから、AI エージェントや自動化ツールが構造化レスポンスを読んで自己修正しやすいんだって。

検証をスキップしたいときは、CreateStack / UpdateStack / CreateChangeSet の新しい `DisableValidation` パラメータか、CLI の `--disable-validation` フラグを使ってね。

対応リージョンは、CloudFormation が使える全リージョン(中国を除く)だよ。

## まとめ

- CloudFormation の事前デプロイ検証が Create Stack / Update Stack の全操作に拡大
- 変更セット作成時に、クォータ・Config Recorder・ECR 削除可否の 3 つの警告が追加
- デフォルトでオン、`DisableValidation` でスキップも可能
- CDK は `cdk deploy` / `cdk validate` で結果を返し、AI エージェントの自己修正にも便利
- 中国を除く全 CloudFormation 対応リージョンで利用可

失敗を待たずにサッと直したい IaC 好きさんや、CI/CD・AI エージェントで自動デプロイしてる人に刺さるアップデートだよ！
