我正在尝试编写 CloudFormation 模板来配置具有智能层配置的 AWS S3 存储桶,并已阅读 AWS::S3::Bucket IntelligentTieringConfiguration 链接。但是不清楚在 YAML 文件中的位置。
我有一个模板文件,并运行了一个 AWS CLI 命令
$ aws cloudformation create-stack --stack-name test-s3 --template-body file://test-s3.yaml --region us-east-1
我试过了
Description: AWS Cloudformation template to create S3 buckets
Resources:
S3Bucket0:
Type: AWS::S3::Bucket
DeletionPolicy: Retain
IntelligentTieringConfiguration:
Id: Tier1
Status: Enabled
Tiering:
- ARCHIVE_ACCESS
...这会立即从 AWS CLI 中给出此错误。
An error occurred (ValidationError) when calling the CreateStack operation: Invalid template resource property 'IntelligentTieringConfiguration
...或...
Description: AWS Cloudformation template to create S3 buckets
Resources:
S3Bucket0:
Type: AWS::S3::Bucket
DeletionPolicy: Retain
Properties:
IntelligentTieringConfiguration:
Id: Tier1
Status: Enabled
Tiering:
- ARCHIVE_ACCESS
...这会在 AWS CloudFormation 控制台中出现此错误。
Encountered unsupported property IntelligentTieringConfiguration
那么正确的格式是什么?
答案 0 :(得分:2)
建议尝试使用 CloudFormation Linter 中的 VSCode 在创作模板以及自动完成和文档链接时内联查看其中一些错误:
[cfn-lint] E3002: Invalid Property Resources/S3Bucket0/Properties/IntelligentTieringConfiguration
应该看起来更像这样:
Resources:
S3Bucket0:
Type: AWS::S3::Bucket
DeletionPolicy: Retain
Properties:
IntelligentTieringConfigurations:
- Id: Tier1
Status: Enabled
Tierings:
- AccessTier: ARCHIVE_ACCESS
Days: