Interface LifecyclePolicyProps

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

@Generated(value="jsii-pacmak/1.120.0 (build 192dc88)", date="2025-12-05T22:26:50.076Z") @Stability(Experimental) public interface LifecyclePolicyProps extends software.amazon.jsii.JsiiSerializable
(experimental) Properties for creating a Lifecycle Policy resource.

Example:

 LifecyclePolicy disabledPolicy = LifecyclePolicy.Builder.create(this, "DisabledPolicy")
         .lifecyclePolicyName("my-disabled-policy")
         .description("A lifecycle policy that is temporarily disabled")
         .status(LifecyclePolicyStatus.DISABLED)
         .resourceType(LifecyclePolicyResourceType.AMI_IMAGE)
         .details(List.of(LifecyclePolicyDetail.builder()
                 .action(LifecyclePolicyAction.builder().type(LifecyclePolicyActionType.DELETE).build())
                 .filter(LifecyclePolicyFilter.builder().ageFilter(LifecyclePolicyAgeFilter.builder().age(Duration.days(30)).build()).build())
                 .build()))
         .resourceSelection(LifecyclePolicyResourceSelection.builder()
                 .tags(Map.of("Environment", "testing"))
                 .build())
         .tags(Map.of(
                 "Owner", "DevOps",
                 "CostCenter", "Engineering"))
         .build();
 
  • Method Details

    • getDetails

      @Stability(Experimental) @NotNull List<LifecyclePolicyDetail> getDetails()
      (experimental) Configuration details for the lifecycle policy rules.
    • getResourceSelection

      @Stability(Experimental) @NotNull LifecyclePolicyResourceSelection getResourceSelection()
      (experimental) Selection criteria for the resources that the lifecycle policy applies to.
    • getResourceType

      @Stability(Experimental) @NotNull LifecyclePolicyResourceType getResourceType()
      (experimental) The type of Image Builder resource that the lifecycle policy applies to.
    • getDescription

      @Stability(Experimental) @Nullable default String getDescription()
      (experimental) The description of the lifecycle policy.

      Default: None

    • getExecutionRole

      @Stability(Experimental) @Nullable default IRole getExecutionRole()
      (experimental) The execution role that grants Image Builder access to run lifecycle actions.

      By default, an execution role will be created with the minimal permissions needed to execute the lifecycle policy actions.

      Default: - an execution role will be generated

    • getLifecyclePolicyName

      @Stability(Experimental) @Nullable default String getLifecyclePolicyName()
      (experimental) The name of the lifecycle policy.

      Default: - a name is generated

    • getStatus

      @Stability(Experimental) @Nullable default LifecyclePolicyStatus getStatus()
      (experimental) The status of the lifecycle policy.

      Default: LifecyclePolicyStatus.ENABLED

    • getTags

      @Stability(Experimental) @Nullable default Map<String,String> getTags()
      (experimental) The tags to apply to the lifecycle policy.

      Default: - none

    • builder

      @Stability(Experimental) static LifecyclePolicyProps.Builder builder()
      Returns:
      a LifecyclePolicyProps.Builder of LifecyclePolicyProps