Interface LifecyclePolicyExclusionRules

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

@Generated(value="jsii-pacmak/1.120.0 (build 192dc88)", date="2025-12-05T22:26:50.074Z") @Stability(Experimental) public interface LifecyclePolicyExclusionRules extends software.amazon.jsii.JsiiSerializable
(experimental) The rules to apply for excluding resources from the lifecycle policy rule.

Example:

 LifecyclePolicy excludeAmisPolicy = LifecyclePolicy.Builder.create(this, "ExcludeAmisPolicy")
         .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())
                 .exclusionRules(LifecyclePolicyExclusionRules.builder()
                         .amiExclusionRules(LifecyclePolicyAmiExclusionRules.builder()
                                 .isPublic(true) // Exclude public AMIs
                                 .lastLaunched(Duration.days(7)) // Exclude AMIs launched in last 7 days
                                 .regions(List.of("us-west-2", "eu-west-1")) // Exclude AMIs in specific regions
                                 .sharedAccounts(List.of("123456789012")) // Exclude AMIs shared with specific accounts
                                 .tags(Map.of(
                                         "Protected", "true",
                                         "Environment", "production"))
                                 .build())
                         .build())
                 .build()))
         .resourceSelection(LifecyclePolicyResourceSelection.builder()
                 .tags(Map.of("Team", "infrastructure"))
                 .build())
         .build();