AWS CloudFormation Templateにカンマ区切りのパラメータのリストを渡して、それらの値に基づいて複数のAmazon S3バケットを作成します。
私はカンマ区切りの国名のリストを渡している必要があり、その後CloudFormation Templateはその多くのS3バケットを構築します(パラメータに渡された国の名前に基づいて)。
たとえば、パラメータのfr,us,gb
を渡すと、スタックはfr_myprod_bucket
、us_myprod_bucket
、gb_myprod_bucket
を作成する必要があります。
私は雲の構造のループにはないことを知っているので、私がこれを達成できる方法はわかりませんか?
カウントマクロ !
カウントマクロは、Cloudformationリソースのテンプレート全体のCountプロパティを提供します。カットアンドペーストしなくても、同じタイプの複数のリソースを指定できます。
したがって、次のようにします。
AWSTemplateFormatVersion: "2010-09-09"
Transform: Count
Resources:
Bucket:
Type: AWS::S3::Bucket
Properties:
Tags:
- Key: TestKey
Value: my bucket %d
Count: 3
_
次のようになります。
AWSTemplateFormatVersion: "2010-09-09"
Resources:
Bucket1:
Type: AWS::S3::Bucket
Properties:
Tags:
- Key: TestKey
Value: my bucket 1
Bucket2:
Type: AWS::S3::Bucket
Properties:
Tags:
- Key: TestKey
Value: my bucket 2
Bucket3:
Type: AWS::S3::Bucket
Properties:
Tags:
- Key: TestKey
Value: my bucket 3
_