CloudFormation で ECR ライフサイクルポリシーを定義する方法 質問する

CloudFormation で ECR ライフサイクルポリシーを定義する方法 質問する

リポジトリ内のイメージ数を制限するために、ライフサイクルポリシーを定義したいと思います。スタックはすべて CloudFormation で定義されているので、このポリシーも定義したいと思います。

たとえば、私のポリシーは「タグ付けされているかどうかに関係なく、最新の 8 枚の画像のみを保持する」ということになります。

ベストアンサー1

解決策は非常に簡単でしたが、例や同様の質問が見つからなかったため (ECR は主流ではないことは承知しています)、私が見つけた簡単な解決策をここに投稿します。これは、ポリシーを JSON として CloudFormation 定義に挿入するだけです。

MyRepository:
  Type: AWS::ECR::Repository
  Properties:
    LifecyclePolicy:
      LifecyclePolicyText: |
        {
          "rules": [
          {
            "rulePriority": 1,
            "description": "Only keep 8 images",
            "selection": {
              "tagStatus": "any",
              "countType": "imageCountMoreThan",
              "countNumber": 8
            },
            "action": { "type": "expire" }
          }]
        }

もちろんこれは非常に単純ですが、私が探していた出発点です

おすすめ記事