Interface LifecycleRule

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
LifecycleRule.Jsii$Proxy

@Generated(value="jsii-pacmak/1.101.0 (build b95fe5d)", date="2024-07-22T22:42:50.900Z") @Stability(Stable) public interface LifecycleRule extends software.amazon.jsii.JsiiSerializable
An ECR life cycle rule.

Example:

 Repository repository;
 repository.addLifecycleRule(LifecycleRule.builder().tagPrefixList(List.of("prod")).maxImageCount(9999).build());
 repository.addLifecycleRule(LifecycleRule.builder().maxImageAge(Duration.days(30)).build());
 
  • Method Details

    • getDescription

      @Stability(Stable) @Nullable default String getDescription()
      Describes the purpose of the rule.

      Default: No description

    • getMaxImageAge

      @Stability(Stable) @Nullable default Duration getMaxImageAge()
      The maximum age of images to retain. The value must represent a number of days.

      Specify exactly one of maxImageCount and maxImageAge.

    • getMaxImageCount

      @Stability(Stable) @Nullable default Number getMaxImageCount()
      The maximum number of images to retain.

      Specify exactly one of maxImageCount and maxImageAge.

    • getRulePriority

      @Stability(Stable) @Nullable default Number getRulePriority()
      Controls the order in which rules are evaluated (low to high).

      All rules must have a unique priority, where lower numbers have higher precedence. The first rule that matches is applied to an image.

      There can only be one rule with a tagStatus of Any, and it must have the highest rulePriority.

      All rules without a specified priority will have incrementing priorities automatically assigned to them, higher than any rules that DO have priorities.

      Default: Automatically assigned

    • getTagPatternList

      @Stability(Stable) @Nullable default List<String> getTagPatternList()
      Select images that have ALL the given patterns in their tag.

      There is a maximum limit of four wildcards () per string. For example, ["test123", "test123*"] is valid but ["test123456"] is invalid.

      Both tagPrefixList and tagPatternList cannot be specified together in a rule.

      Only if tagStatus == TagStatus.Tagged

    • getTagPrefixList

      @Stability(Stable) @Nullable default List<String> getTagPrefixList()
      Select images that have ALL the given prefixes in their tag.

      Both tagPrefixList and tagPatternList cannot be specified together in a rule.

      Only if tagStatus == TagStatus.Tagged

    • getTagStatus

      @Stability(Stable) @Nullable default TagStatus getTagStatus()
      Select images based on tags.

      Only one rule is allowed to select untagged images, and it must have the highest rulePriority.

      Default: TagStatus.Tagged if tagPrefixList or tagPatternList is given, TagStatus.Any otherwise

    • builder

      @Stability(Stable) static LifecycleRule.Builder builder()
      Returns:
      a LifecycleRule.Builder of LifecycleRule