投稿日: Nov 17, 2023

AWS CloudFormation で、リソースをスタックにインポートするプロセスを効率化する ImportExistingResources という CreateChangeSet API の新しいパラメータが利用できるようになりました。ImportExistingResources パラメータを指定して ChangeSets をデプロイすると、CloudFormation により、AWS アカウントに既に存在するテンプレート内のリソースが自動的にインポートされます。CloudFormation は、テンプレート内のリソースのカスタム名を使用して、リソースの存在を判断します。今回のリリースにより、インポート操作の手動操作が減り、名前の競合によるデプロイの失敗を避けることができます。

ChangeSets を使用すると、リソースの作成など、デプロイで CloudFormation が実行するアクションをプレビューできます。現在、同じ ChangeSet を使用してリソースを作成または変更したり、リソースをインポートしたりすることはできません。これにより、テンプレートにロールバックなどの既存リソースと新規リソースの両方が含まれるデプロイで遅延が発生する可能性があります。また、リソースをインポートするには、テンプレートに加えて、各リソースの一意の名前を含むドキュメントを提供する必要があります。このドキュメントを使用すると、EC2 インスタンスなど、テンプレートでカスタム名を使用できないリソースをインポートできます。ただし、このドキュメントを作成するには、カスタムの自動化または手動作業が必要になります。ImportExistingResources を使用すると、スタックを作成または更新するデプロイでカスタム名を持つリソースをインポートできます。リソース名を含むドキュメントを別途用意する必要はありません。これにより、手動手順が減り、カスタム名が含まれるリソースをインポートするシナリオでも CI/CD アクションを使用できるようになります。

ImportExistingResources は、CloudFormation が利用可能な AWS リージョンで利用できます。CloudFormation を利用できる AWS リージョンについては、AWS リージョン表をご覧ください。

詳細については、CreateChangeSet API ドキュメントを参照してください。