2017-02-21 32 views
0

这样做(AWS-SDK红宝石宝石):无法设置桶生命周期配置

s3_client.put_bucket_lifecycle_configuration({ 
    bucket: bucket, 
    lifecycle_configuration: { 
    rules: [ 
     { 
     id: "clean-temporary", 
     status: "Disabled", # required, accepts Enabled, Disabled 
     prefix: "temporary", 
     filter: { 
      prefix: "temporary", 
     }, 
     expiration: { 
      days: 1, 
     }, 
     }, 
    ], 
    }, 
}) 

我得到了一个错误:Aws::S3::Errors::BadRequest: [!]

根据发行说明,我的版本(11)支持: 已添加S3存储桶生命周期API。请注意,目前它只支持对象到期。

我在做什么错?

UPD: 试过s3cmd,并没有帮助:

⇒ s3cmd -c s3cfg setlifecycle lifecycle_configuration.xml s3://my-new-bucket 
ERROR: S3 error: 405 (MethodNotAllowed) 
⇒ cat lifecycle_configuration.xml 
<?xml version="1.0" encoding="UTF-8"?> 
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Rule><ID>test</ID><Status>Enabled</Status><Expiration><Days>1</Days></Expiration><Prefix></Prefix></Rule></LifecycleConfiguration> 

回答

0

找到一个解决办法:

s3cmd -c s3cfg setlifecycle lifecycle_configuration.xml s3://my-new-bucket --signature-v2 

可能AWS-SDK的宝石是不是与此功能兼容。

相关问题