投稿日: Apr 16, 2021

AWS CloudFormation StackSets によりスタックの機能が拡張され、複数のアカウントとリージョンにまたがるスタックの作成、更新、または削除が、1 回の操作で実行できるようになります。当社では今回、スタックセットを作成するためのテンプレート内で、CloudFormation マクロと変換のサポートが開始されたことを発表いたします。AWS CloudFormation マクロ により、検索と置換などの単純な操作からテンプレート全体の変換までにいたる各種のカスタム処理を、CloudFormation テンプレートで実行できます。CloudFormation マクロでは、AWS::IncludeAWS::Serverless の変換を実現するものと同じテクノロジーを使用しています。CloudFormation 変換は、AWS インフラストラクチャの式をコードとして凝縮し、テンプレートコンポーネントの再利用を可能にすることによって、テンプレート作成を簡素化します。

これまで、スタックセットを作成するための CloudFormation テンプレートでは、変換を使用することはできませんでした。今回のリリースでは、AWS::Include や AWS::Serverless などの変換がご利用可能になりました。また、CloudFormation マクロを使用して独自のカスタム変換を定義し、スタックセットを作成するテンプレートを処理することもできます。例えば、テンプレートで共通して使用できる文字列関数を作成したり、一般的な CloudFormation リソースのための省略構文を定義することができます。 詳細については、マクロのサンプル例を参照してください。

StackSets による CloudFormation マクロのサポートについては、AWS CloudFormation StackSets のドキュメントを参照してください。

StackSets 向けの CloudFormation マクロサポートは、現在、セルフマネージドの権限モデルを使用して作成された StackSets でのみご利用いただけます。CloudFormation マクロは、AWS Lambda が提供中であるすべての AWS リージョンでご使用になれます。AWS Lambda をご利用いただけるすべての AWS リージョンのリストについては、リージョン表をご覧ください。