8

我正在尝试为我的 S3 存储桶设置生命周期配置,使其在 90 天后过期。但是,在推送我的 CFT 堆栈时,我收到一条错误消息,提示“属性状态不能为空”。

我尝试设置生活方式配置,并在几天内到期,但它似乎失败了。

AWSTemplateFormatVersion: '2010-09-09'
Description: Creates S3 Bucket

Resources:
 TestBucket:
 Type: AWS::S3::Bucket
 Properties:
   BucketName: !Sub "${AWS::StackName}-test"
   AccessControl: Private
   LifecycleConfiguration:
    Rules:
    - Id: DeleteContentAfter90Days
      Prefix: ''
      Status: Enabled
      ExpirationInDays: '90'

当我在控制台中检查我的状态时,我收到“属性状态不能为空”和更新回滚。

4

3 回答 3

15
Status: 'Enabled'

Status should be string value as stated in the documentation

Here is a working example of LifecycleConfiguration:

LifecycleConfiguration:
    Rules:
      - Id: DeleteContentAfter1Day
        Status: 'Enabled'
        ExpirationInDays: 1
于 2019-06-02T10:31:35.403 回答
3

ExpirationInDays应该是数字,而不是字符串

于 2019-02-12T07:53:17.393 回答
0

Cloudformation 不能采用空值,请删除此行 - 前缀:''

于 2021-04-09T21:40:02.770 回答