Show / Hide Table of Contents

Class CfnPlan.ExecutionBlockConfigurationProperty

Execution block configurations for a workflow in a Region switch plan.

Inheritance
object
CfnPlan.ExecutionBlockConfigurationProperty
Implements
CfnPlan.IExecutionBlockConfigurationProperty
Inherited Members
object.GetType()
object.MemberwiseClone()
object.ToString()
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
Namespace: Amazon.CDK.AWS.ARCRegionSwitch
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnPlan.ExecutionBlockConfigurationProperty : CfnPlan.IExecutionBlockConfigurationProperty
Syntax (vb)
Public Class CfnPlan.ExecutionBlockConfigurationProperty Implements CfnPlan.IExecutionBlockConfigurationProperty
Remarks

An execution block represents a specific type of action to perform during a Region switch.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.ARCRegionSwitch;

             ExecutionBlockConfigurationProperty executionBlockConfigurationProperty_;

             var executionBlockConfigurationProperty = new ExecutionBlockConfigurationProperty {
                 ArcRoutingControlConfig = new ArcRoutingControlConfigurationProperty {
                     RegionAndRoutingControls = new Dictionary<string, object> {
                         { "regionAndRoutingControlsKey", new [] { new ArcRoutingControlStateProperty {
                             RoutingControlArn = "routingControlArn",
                             State = "state"
                         } } }
                     },

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123
                 },
                 CustomActionLambdaConfig = new CustomActionLambdaConfigurationProperty {
                     Lambdas = new [] { new LambdasProperty {
                         Arn = "arn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },
                     RegionToRun = "regionToRun",
                     RetryIntervalMinutes = 123,

                     // the properties below are optional
                     TimeoutMinutes = 123,
                     Ungraceful = new LambdaUngracefulProperty {
                         Behavior = "behavior"
                     }
                 },
                 DocumentDbConfig = new DocumentDbConfigurationProperty {
                     Behavior = "behavior",
                     DatabaseClusterArns = new [] { "databaseClusterArns" },
                     GlobalClusterIdentifier = "globalClusterIdentifier",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123,
                     Ungraceful = new DocumentDbUngracefulProperty {
                         Ungraceful = "ungraceful"
                     }
                 },
                 Ec2AsgCapacityIncreaseConfig = new Ec2AsgCapacityIncreaseConfigurationProperty {
                     Asgs = new [] { new AsgProperty {
                         Arn = "arn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new Ec2UngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 EcsCapacityIncreaseConfig = new EcsCapacityIncreaseConfigurationProperty {
                     Services = new [] { new ServiceProperty {
                         ClusterArn = "clusterArn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId",
                         ServiceArn = "serviceArn"
                     } },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new EcsUngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 EksResourceScalingConfig = new EksResourceScalingConfigurationProperty {
                     KubernetesResourceType = new KubernetesResourceTypeProperty {
                         ApiVersion = "apiVersion",
                         Kind = "kind"
                     },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     EksClusters = new [] { new EksClusterProperty {
                         ClusterArn = "clusterArn",

                         // the properties below are optional
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },
                     ScalingResources = new [] { new Dictionary<string, object> {
                         { "scalingResourcesKey", new Dictionary<string, object> {
                             { "scalingResourcesKey", new KubernetesScalingResourceProperty {
                                 Name = "name",
                                 Namespace = "namespace",

                                 // the properties below are optional
                                 HpaName = "hpaName"
                             } }
                         } }
                     } },
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new EksResourceScalingUngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 ExecutionApprovalConfig = new ExecutionApprovalConfigurationProperty {
                     ApprovalRole = "approvalRole",

                     // the properties below are optional
                     TimeoutMinutes = 123
                 },
                 GlobalAuroraConfig = new GlobalAuroraConfigurationProperty {
                     Behavior = "behavior",
                     DatabaseClusterArns = new [] { "databaseClusterArns" },
                     GlobalClusterIdentifier = "globalClusterIdentifier",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123,
                     Ungraceful = new GlobalAuroraUngracefulProperty {
                         Ungraceful = "ungraceful"
                     }
                 },
                 ParallelConfig = new ParallelExecutionBlockConfigurationProperty {
                     Steps = new [] { new StepProperty {
                         ExecutionBlockConfiguration = executionBlockConfigurationProperty_,
                         ExecutionBlockType = "executionBlockType",
                         Name = "name",

                         // the properties below are optional
                         Description = "description"
                     } }
                 },
                 RegionSwitchPlanConfig = new RegionSwitchPlanConfigurationProperty {
                     Arn = "arn",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId"
                 },
                 Route53HealthCheckConfig = new Route53HealthCheckConfigurationProperty {
                     HostedZoneId = "hostedZoneId",
                     RecordName = "recordName",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     RecordSets = new [] { new Route53ResourceRecordSetProperty {
                         RecordSetIdentifier = "recordSetIdentifier",
                         Region = "region"
                     } },
                     TimeoutMinutes = 123
                 }
             };

Synopsis

Constructors

ExecutionBlockConfigurationProperty()

Execution block configurations for a workflow in a Region switch plan.

Properties

ArcRoutingControlConfig

An ARC routing control execution block.

CustomActionLambdaConfig

An AWS Lambda execution block.

DocumentDbConfig

Execution block configurations for a workflow in a Region switch plan.

Ec2AsgCapacityIncreaseConfig

An EC2 Auto Scaling group execution block.

EcsCapacityIncreaseConfig

The capacity increase specified for the configuration.

EksResourceScalingConfig

An AWS EKS resource scaling execution block.

ExecutionApprovalConfig

A manual approval execution block.

GlobalAuroraConfig

An Aurora Global Database execution block.

ParallelConfig

A parallel configuration execution block.

RegionSwitchPlanConfig

A Region switch plan execution block.

Route53HealthCheckConfig

The Amazon Route 53 health check configuration.

Constructors

ExecutionBlockConfigurationProperty()

Execution block configurations for a workflow in a Region switch plan.

public ExecutionBlockConfigurationProperty()
Remarks

An execution block represents a specific type of action to perform during a Region switch.

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html

ExampleMetadata: fixture=_generated

Examples
// The code below shows an example of how to instantiate this type.
             // The values are placeholders you should change.
             using Amazon.CDK.AWS.ARCRegionSwitch;

             ExecutionBlockConfigurationProperty executionBlockConfigurationProperty_;

             var executionBlockConfigurationProperty = new ExecutionBlockConfigurationProperty {
                 ArcRoutingControlConfig = new ArcRoutingControlConfigurationProperty {
                     RegionAndRoutingControls = new Dictionary<string, object> {
                         { "regionAndRoutingControlsKey", new [] { new ArcRoutingControlStateProperty {
                             RoutingControlArn = "routingControlArn",
                             State = "state"
                         } } }
                     },

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123
                 },
                 CustomActionLambdaConfig = new CustomActionLambdaConfigurationProperty {
                     Lambdas = new [] { new LambdasProperty {
                         Arn = "arn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },
                     RegionToRun = "regionToRun",
                     RetryIntervalMinutes = 123,

                     // the properties below are optional
                     TimeoutMinutes = 123,
                     Ungraceful = new LambdaUngracefulProperty {
                         Behavior = "behavior"
                     }
                 },
                 DocumentDbConfig = new DocumentDbConfigurationProperty {
                     Behavior = "behavior",
                     DatabaseClusterArns = new [] { "databaseClusterArns" },
                     GlobalClusterIdentifier = "globalClusterIdentifier",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123,
                     Ungraceful = new DocumentDbUngracefulProperty {
                         Ungraceful = "ungraceful"
                     }
                 },
                 Ec2AsgCapacityIncreaseConfig = new Ec2AsgCapacityIncreaseConfigurationProperty {
                     Asgs = new [] { new AsgProperty {
                         Arn = "arn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new Ec2UngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 EcsCapacityIncreaseConfig = new EcsCapacityIncreaseConfigurationProperty {
                     Services = new [] { new ServiceProperty {
                         ClusterArn = "clusterArn",
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId",
                         ServiceArn = "serviceArn"
                     } },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new EcsUngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 EksResourceScalingConfig = new EksResourceScalingConfigurationProperty {
                     KubernetesResourceType = new KubernetesResourceTypeProperty {
                         ApiVersion = "apiVersion",
                         Kind = "kind"
                     },

                     // the properties below are optional
                     CapacityMonitoringApproach = "capacityMonitoringApproach",
                     EksClusters = new [] { new EksClusterProperty {
                         ClusterArn = "clusterArn",

                         // the properties below are optional
                         CrossAccountRole = "crossAccountRole",
                         ExternalId = "externalId"
                     } },
                     ScalingResources = new [] { new Dictionary<string, object> {
                         { "scalingResourcesKey", new Dictionary<string, object> {
                             { "scalingResourcesKey", new KubernetesScalingResourceProperty {
                                 Name = "name",
                                 Namespace = "namespace",

                                 // the properties below are optional
                                 HpaName = "hpaName"
                             } }
                         } }
                     } },
                     TargetPercent = 123,
                     TimeoutMinutes = 123,
                     Ungraceful = new EksResourceScalingUngracefulProperty {
                         MinimumSuccessPercentage = 123
                     }
                 },
                 ExecutionApprovalConfig = new ExecutionApprovalConfigurationProperty {
                     ApprovalRole = "approvalRole",

                     // the properties below are optional
                     TimeoutMinutes = 123
                 },
                 GlobalAuroraConfig = new GlobalAuroraConfigurationProperty {
                     Behavior = "behavior",
                     DatabaseClusterArns = new [] { "databaseClusterArns" },
                     GlobalClusterIdentifier = "globalClusterIdentifier",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     TimeoutMinutes = 123,
                     Ungraceful = new GlobalAuroraUngracefulProperty {
                         Ungraceful = "ungraceful"
                     }
                 },
                 ParallelConfig = new ParallelExecutionBlockConfigurationProperty {
                     Steps = new [] { new StepProperty {
                         ExecutionBlockConfiguration = executionBlockConfigurationProperty_,
                         ExecutionBlockType = "executionBlockType",
                         Name = "name",

                         // the properties below are optional
                         Description = "description"
                     } }
                 },
                 RegionSwitchPlanConfig = new RegionSwitchPlanConfigurationProperty {
                     Arn = "arn",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId"
                 },
                 Route53HealthCheckConfig = new Route53HealthCheckConfigurationProperty {
                     HostedZoneId = "hostedZoneId",
                     RecordName = "recordName",

                     // the properties below are optional
                     CrossAccountRole = "crossAccountRole",
                     ExternalId = "externalId",
                     RecordSets = new [] { new Route53ResourceRecordSetProperty {
                         RecordSetIdentifier = "recordSetIdentifier",
                         Region = "region"
                     } },
                     TimeoutMinutes = 123
                 }
             };

Properties

ArcRoutingControlConfig

An ARC routing control execution block.

public object? ArcRoutingControlConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-arcroutingcontrolconfig

Type union: either IResolvable or CfnPlan.IArcRoutingControlConfigurationProperty

CustomActionLambdaConfig

An AWS Lambda execution block.

public object? CustomActionLambdaConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-customactionlambdaconfig

Type union: either IResolvable or CfnPlan.ICustomActionLambdaConfigurationProperty

DocumentDbConfig

Execution block configurations for a workflow in a Region switch plan.

public object? DocumentDbConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-documentdbconfig

Type union: either IResolvable or CfnPlan.IDocumentDbConfigurationProperty

Ec2AsgCapacityIncreaseConfig

An EC2 Auto Scaling group execution block.

public object? Ec2AsgCapacityIncreaseConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-ec2asgcapacityincreaseconfig

Type union: either IResolvable or CfnPlan.IEc2AsgCapacityIncreaseConfigurationProperty

EcsCapacityIncreaseConfig

The capacity increase specified for the configuration.

public object? EcsCapacityIncreaseConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-ecscapacityincreaseconfig

Type union: either IResolvable or CfnPlan.IEcsCapacityIncreaseConfigurationProperty

EksResourceScalingConfig

An AWS EKS resource scaling execution block.

public object? EksResourceScalingConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-eksresourcescalingconfig

Type union: either IResolvable or CfnPlan.IEksResourceScalingConfigurationProperty

ExecutionApprovalConfig

A manual approval execution block.

public object? ExecutionApprovalConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-executionapprovalconfig

Type union: either IResolvable or CfnPlan.IExecutionApprovalConfigurationProperty

GlobalAuroraConfig

An Aurora Global Database execution block.

public object? GlobalAuroraConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-globalauroraconfig

Type union: either IResolvable or CfnPlan.IGlobalAuroraConfigurationProperty

ParallelConfig

A parallel configuration execution block.

public object? ParallelConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-parallelconfig

Type union: either IResolvable or CfnPlan.IParallelExecutionBlockConfigurationProperty

RegionSwitchPlanConfig

A Region switch plan execution block.

public object? RegionSwitchPlanConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-regionswitchplanconfig

Type union: either IResolvable or CfnPlan.IRegionSwitchPlanConfigurationProperty

Route53HealthCheckConfig

The Amazon Route 53 health check configuration.

public object? Route53HealthCheckConfig { get; set; }
Property Value

object

Remarks

See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-arcregionswitch-plan-executionblockconfiguration.html#cfn-arcregionswitch-plan-executionblockconfiguration-route53healthcheckconfig

Type union: either IResolvable or CfnPlan.IRoute53HealthCheckConfigurationProperty

Implements

CfnPlan.IExecutionBlockConfigurationProperty
Back to top Generated by DocFX