簡體   English   中英

無法使用無服務器將生命周期策略添加到 s3 存儲桶

[英]Unable to add lifecycle policy to s3 bucket using serverless

我想向我現有的 s3 存儲桶(使用無服務器)添加一個生命周期策略,它會刪除我的 s3 存儲桶中的所有文件夾。我已經在 serverless.yml 中編寫了代碼。當我嘗試部署我的代碼時,我得到 -

其他堆棧資源更新失敗 (UPDATE_ROLLBACK_COMPLETE)。

所以我檢查了 cloudformation 堆棧,我收到消息說我的存儲桶已經存在 -

my_bucket_name 已存在

資源更新已取消

未能創建以下資源:[my_bucket_name]

我不知道為什么我會得到這個,我的 s3_bucket 代碼看起來像這樣 -

custom:
    additionalStacks:
      ressources:
        Resources:
          MyS3TBucket:
            Type: AWS::S3::Bucket
            Properties:
              BucketName: my_bucket
              LifecycleConfiguration:
                Rules:
                  - Status: Enabled 
                    ExpirationInDays: 30

這不是我的整個 s3 代碼,而是這篇文章中需要的一小部分。 在添加生命周期配置之前,一切正常。 任何幫助將不勝感激,謝謝

正如錯誤所暗示的那樣:

my_bucket_name already exists

您要創建的桶已經存在。 如果是您的,則必須先將刪除,然后才能重新創建。 如果不是,則存儲桶名稱必須是全局唯一的 這意味着可能其他一些 AWS 用戶已經創建了一個與您的名稱相同的支持。 在這種情況下,您必須確保后綴名絕對唯一,這通常通過添加一些隨機后綴來完成,例如:

MyS3TBucket:
      Type: AWS::S3::Bucket
      Properties:
        BucketName: my_bucket-489d939239dd3
        LifecycleConfiguration:
          Rules:
            - Status: Enabled 
              ExpirationInDays: 30

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM