Class CfnStateMachineAlias.DeploymentPreferenceProperty
Enables gradual state machine deployments.
Inheritance
Namespace: Amazon.CDK.AWS.StepFunctions
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class DeploymentPreferenceProperty : Object, CfnStateMachineAlias.IDeploymentPreferenceProperty
Syntax (vb)
Public Class DeploymentPreferenceProperty
Inherits Object
Implements CfnStateMachineAlias.IDeploymentPreferenceProperty
Remarks
CloudFormation automatically shifts traffic from the version the alias currently points to, to a new state machine version that you specify.
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.StepFunctions;
var deploymentPreferenceProperty = new DeploymentPreferenceProperty {
StateMachineVersionArn = "stateMachineVersionArn",
Type = "type",
// the properties below are optional
Alarms = new [] { "alarms" },
Interval = 123,
Percentage = 123
};
Synopsis
Constructors
DeploymentPreferenceProperty() |
Properties
Alarms | A list of Amazon CloudWatch alarm names to be monitored during the deployment. |
Interval | The time in minutes between each traffic shifting increment. |
Percentage | The percentage of traffic to shift to the new version in each increment. |
StateMachineVersionArn | The Amazon Resource Name (ARN) of the |
Type | The type of deployment you want to perform. You can specify one of the following types:. |
Constructors
DeploymentPreferenceProperty()
public DeploymentPreferenceProperty()
Properties
Alarms
A list of Amazon CloudWatch alarm names to be monitored during the deployment.
public string[] Alarms { get; set; }
Property Value
System.String[]
Remarks
The deployment fails and rolls back if any of these alarms go into the ALARM
state.
Amazon CloudWatch considers nonexistent alarms to have an OK
state. If you provide an invalid alarm name or provide the ARN of an alarm instead of its name, your deployment may not roll back correctly.
Interval
The time in minutes between each traffic shifting increment.
public Nullable<double> Interval { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
Percentage
The percentage of traffic to shift to the new version in each increment.
public Nullable<double> Percentage { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
StateMachineVersionArn
The Amazon Resource Name (ARN) of the AWS::StepFunctions::StateMachineVersion
resource that will be the final version to which the alias points to when the traffic shifting is complete.
public string StateMachineVersionArn { get; set; }
Property Value
System.String
Remarks
While performing gradual deployments, you can only provide a single state machine version ARN. To explicitly set version weights in a CloudFormation template, use RoutingConfiguration
instead.
Type
The type of deployment you want to perform. You can specify one of the following types:.
public string Type { get; set; }
Property Value
System.String
Remarks
For example, if you specify the increment percent as 20
with an interval of 600
minutes, this deployment increases traffic by 20 percent every 600 minutes until the new version receives 100 percent of the traffic. This deployment immediately rolls back the new version if any CloudWatch alarms are triggered.
In the first increment, a small percentage of traffic, for example, 10 percent is shifted to the new version. In the second increment, before a specified time interval in seconds gets over, the remaining traffic is shifted to the new version. The shift to the new version for the remaining traffic takes place only if no CloudWatch alarms are triggered during the specified time interval.