Interface CfnPlanProps

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

@Generated(value="jsii-pacmak/1.113.0 (build fc68b25)", date="2025-08-12T14:44:10.556Z") @Stability(Stable) public interface CfnPlanProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnPlan.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.arcregionswitch.*;
 StepProperty stepProperty_;
 CfnPlanProps cfnPlanProps = CfnPlanProps.builder()
         .executionRole("executionRole")
         .name("name")
         .recoveryApproach("recoveryApproach")
         .regions(List.of("regions"))
         .workflows(List.of(WorkflowProperty.builder()
                 .workflowTargetAction("workflowTargetAction")
                 // the properties below are optional
                 .steps(List.of(StepProperty.builder()
                         .executionBlockConfiguration(ExecutionBlockConfigurationProperty.builder()
                                 .arcRoutingControlConfig(ArcRoutingControlConfigurationProperty.builder()
                                         .regionAndRoutingControls(Map.of(
                                                 "regionAndRoutingControlsKey", List.of(ArcRoutingControlStateProperty.builder()
                                                         .routingControlArn("routingControlArn")
                                                         .state("state")
                                                         .build())))
                                         // the properties below are optional
                                         .crossAccountRole("crossAccountRole")
                                         .externalId("externalId")
                                         .timeoutMinutes(123)
                                         .build())
                                 .customActionLambdaConfig(CustomActionLambdaConfigurationProperty.builder()
                                         .lambdas(List.of(LambdasProperty.builder()
                                                 .arn("arn")
                                                 .crossAccountRole("crossAccountRole")
                                                 .externalId("externalId")
                                                 .build()))
                                         .regionToRun("regionToRun")
                                         .retryIntervalMinutes(123)
                                         // the properties below are optional
                                         .timeoutMinutes(123)
                                         .ungraceful(LambdaUngracefulProperty.builder()
                                                 .behavior("behavior")
                                                 .build())
                                         .build())
                                 .ec2AsgCapacityIncreaseConfig(Ec2AsgCapacityIncreaseConfigurationProperty.builder()
                                         .asgs(List.of(AsgProperty.builder()
                                                 .arn("arn")
                                                 .crossAccountRole("crossAccountRole")
                                                 .externalId("externalId")
                                                 .build()))
                                         // the properties below are optional
                                         .capacityMonitoringApproach("capacityMonitoringApproach")
                                         .targetPercent(123)
                                         .timeoutMinutes(123)
                                         .ungraceful(Ec2UngracefulProperty.builder()
                                                 .minimumSuccessPercentage(123)
                                                 .build())
                                         .build())
                                 .ecsCapacityIncreaseConfig(EcsCapacityIncreaseConfigurationProperty.builder()
                                         .services(List.of(ServiceProperty.builder()
                                                 .clusterArn("clusterArn")
                                                 .crossAccountRole("crossAccountRole")
                                                 .externalId("externalId")
                                                 .serviceArn("serviceArn")
                                                 .build()))
                                         // the properties below are optional
                                         .capacityMonitoringApproach("capacityMonitoringApproach")
                                         .targetPercent(123)
                                         .timeoutMinutes(123)
                                         .ungraceful(EcsUngracefulProperty.builder()
                                                 .minimumSuccessPercentage(123)
                                                 .build())
                                         .build())
                                 .eksResourceScalingConfig(EksResourceScalingConfigurationProperty.builder()
                                         .kubernetesResourceType(KubernetesResourceTypeProperty.builder()
                                                 .apiVersion("apiVersion")
                                                 .kind("kind")
                                                 .build())
                                         // the properties below are optional
                                         .capacityMonitoringApproach("capacityMonitoringApproach")
                                         .eksClusters(List.of(EksClusterProperty.builder()
                                                 .clusterArn("clusterArn")
                                                 // the properties below are optional
                                                 .crossAccountRole("crossAccountRole")
                                                 .externalId("externalId")
                                                 .build()))
                                         .scalingResources(List.of(Map.of(
                                                 "scalingResourcesKey", Map.of(
                                                         "scalingResourcesKey", KubernetesScalingResourceProperty.builder()
                                                                 .name("name")
                                                                 .namespace("namespace")
                                                                 // the properties below are optional
                                                                 .hpaName("hpaName")
                                                                 .build()))))
                                         .targetPercent(123)
                                         .timeoutMinutes(123)
                                         .ungraceful(EksResourceScalingUngracefulProperty.builder()
                                                 .minimumSuccessPercentage(123)
                                                 .build())
                                         .build())
                                 .executionApprovalConfig(ExecutionApprovalConfigurationProperty.builder()
                                         .approvalRole("approvalRole")
                                         // the properties below are optional
                                         .timeoutMinutes(123)
                                         .build())
                                 .globalAuroraConfig(GlobalAuroraConfigurationProperty.builder()
                                         .behavior("behavior")
                                         .databaseClusterArns(List.of("databaseClusterArns"))
                                         .globalClusterIdentifier("globalClusterIdentifier")
                                         // the properties below are optional
                                         .crossAccountRole("crossAccountRole")
                                         .externalId("externalId")
                                         .timeoutMinutes(123)
                                         .ungraceful(GlobalAuroraUngracefulProperty.builder()
                                                 .ungraceful("ungraceful")
                                                 .build())
                                         .build())
                                 .parallelConfig(ParallelExecutionBlockConfigurationProperty.builder()
                                         .steps(List.of(stepProperty_))
                                         .build())
                                 .regionSwitchPlanConfig(RegionSwitchPlanConfigurationProperty.builder()
                                         .arn("arn")
                                         // the properties below are optional
                                         .crossAccountRole("crossAccountRole")
                                         .externalId("externalId")
                                         .build())
                                 .route53HealthCheckConfig(Route53HealthCheckConfigurationProperty.builder()
                                         .hostedZoneId("hostedZoneId")
                                         .recordName("recordName")
                                         // the properties below are optional
                                         .crossAccountRole("crossAccountRole")
                                         .externalId("externalId")
                                         .recordSets(List.of(Route53ResourceRecordSetProperty.builder()
                                                 .recordSetIdentifier("recordSetIdentifier")
                                                 .region("region")
                                                 .build()))
                                         .timeoutMinutes(123)
                                         .build())
                                 .build())
                         .executionBlockType("executionBlockType")
                         .name("name")
                         // the properties below are optional
                         .description("description")
                         .build()))
                 .workflowDescription("workflowDescription")
                 .workflowTargetRegion("workflowTargetRegion")
                 .build()))
         // the properties below are optional
         .associatedAlarms(Map.of(
                 "associatedAlarmsKey", AssociatedAlarmProperty.builder()
                         .alarmType("alarmType")
                         .resourceIdentifier("resourceIdentifier")
                         // the properties below are optional
                         .crossAccountRole("crossAccountRole")
                         .externalId("externalId")
                         .build()))
         .description("description")
         .primaryRegion("primaryRegion")
         .recoveryTimeObjectiveMinutes(123)
         .tags(Map.of(
                 "tagsKey", "tags"))
         .triggers(List.of(TriggerProperty.builder()
                 .action("action")
                 .conditions(List.of(TriggerConditionProperty.builder()
                         .associatedAlarmName("associatedAlarmName")
                         .condition("condition")
                         .build()))
                 .minDelayMinutesBetweenExecutions(123)
                 .targetRegion("targetRegion")
                 // the properties below are optional
                 .description("description")
                 .build()))
         .build();
 

See Also: