shiichan

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

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

AWS What's New aws.amazon.com

なにが発表されたの?

AWS の What's New で、AWS CloudFormation と CDK が、スタック操作の前にエラーをチェックする「事前デプロイ検証」を、Create Stack と Update Stack の全操作で走らせるようになったよ、という発表があったの。今まで待たされてた「作って → 失敗して → ロールバック」のサイクルを回さなくても、数秒で「あ、ここダメだよ」って教えてくれるようになったんだって。

今までどうだったの?

事前検証自体は前からあったんだけど、変更セット (change set) を作るときだけの機能だったの。プロパティの構文ミスとか、リソース名の衝突とか、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 deploycdk 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 エージェントで自動デプロイしてる人に刺さるアップデートだよ!