resource "aws_ecr_repository" "this" { name = "${var.name}-${var.stage}" image_tag_mutability = "MUTABLE" image_scanning_configuration { scan_on_push = true } } resource "aws_ecr_lifecycle_policy" "this" { repository = aws_ecr_repository.this.name policy = jsonencode({ rules = [ { rulePriority = 1 description = "Expire old images" selection = { tagStatus = "any" countType = "imageCountMoreThan" countNumber = var.retain_count } action = { type = "expire" } } ] }) }