2017-02-21 2 views
0

Выполнение этого (AWS-SDk рубиновый камень):Невозможно установить Bucket Lifecycle Конфигурация

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: [!]

Согласно Release Notes, моя версия (11) поддержать его: Добавлен API жизненного цикла ведра S3. Обратите внимание, что в настоящее время он поддерживает только истечение срока действия объекта.

Что я делаю неправильно?

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 не совместимы с этой функцией.