CloudFormation 利用時に cf-templates バケットが作成される条件を教えてください
困っていた内容
CloudFormation を利用時、Amazon S3 にて cf-templates から始まる名前のバケットが自動作成されていました。
cf-templates バケットの作成条件を教えてください。
どう対応すればいいの?
CloudFormation テンプレートをアップロードした際に S3 バケットが自動作成されます。
自動作成されるバケット名の命名規則ですが、2022年11月24日現在は cf-templates- で始まるバケット名になります。
スタックテンプレートの選択 - AWS CloudFormation
ローカルテンプレートファイルをアップロードすると、CloudFormation によって AWS アカウントの Amazon Simple Storage Service (Amazon S3) バケットにアップロードされます。
CloudFormation のドキュメントには、CloudFormation テンプレートをアップロードした際に自動作成されるバケット名の記載がありませんが、別サービスのドキュメントに明記されています。
注記
AWS Service Catalog 製品を作成する際にアップロードする AWS CloudFormation テンプレートは、AWS アカウントで cf-templates- で始まる Amazon Simple Storage Service (Amazon S3) バケットに保存されます。
また、cf-templates バケットを削除した場合でも、テンプレートファイルをアップロードした際に自動で cf-templates バケットが作成されます。
スタックテンプレートの選択 - AWS CloudFormation
CloudFormation によって作成された S3 バケットがない場合は、テンプレートファイルをアップロードしたリージョンごとに一意のバケットが作成されます。 AWS アカウントに、AWS CloudFormation によって作成された S3 バケットが既にある場合、CloudFormation によってそのバケットにテンプレートが追加されます。
試してみた
CloudFormation テンプレートをアップロードした際に cf-templates バケットが自動作成されるか確認します。 検証のため、既存の cf-templates バケットを削除し、その他の cf-templates バケットがないことを確認します。
$ aws s3 ls | grep cf-templates 2021-10-22 10:39:54 cf-templates-xxx-ap-northeast-1 $ aws s3 rb s3://cf-templates-xxx-ap-northeast-1 remove_bucket: cf-templates-xxx-ap-northeast-1 $ aws s3 ls | grep cf-templates $
CloudFormation テンプレートをアップロードします。
cf-templates バケットが自動作成されたことを確認できました。
$ aws s3 ls | grep cf-templates 2022-11-22 18:04:44 cf-templates-xxx-ap-northeast-1 $