Class CfnStateMachineAliasProps.Builder

java.lang.Object
software.amazon.awscdk.services.stepfunctions.CfnStateMachineAliasProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnStateMachineAliasProps>
Enclosing interface:
CfnStateMachineAliasProps

@Stability(Stable) public static final class CfnStateMachineAliasProps.Builder extends Object implements software.amazon.jsii.Builder<CfnStateMachineAliasProps>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • deploymentPreference

      @Stability(Stable) public CfnStateMachineAliasProps.Builder deploymentPreference(IResolvable deploymentPreference)
      Parameters:
      deploymentPreference - The settings that enable gradual state machine deployments. These settings include Alarms , Interval , Percentage , StateMachineVersionArn , and Type .

      CloudFormation automatically shifts traffic from the version an alias currently points to, to a new state machine version that you specify.

      RoutingConfiguration and DeploymentPreference are mutually exclusive properties. You must define only one of these properties.

      Based on the type of deployment you want to perform, you can specify one of the following settings:

      • LINEAR - Shifts traffic to the new version in equal increments with an equal number of minutes between each increment.

      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 Amazon CloudWatch alarms are triggered.

      • ALL_AT_ONCE - Shifts 100 percent of traffic to the new version immediately. CloudFormation monitors the new version and rolls it back automatically to the previous version if any CloudWatch alarms are triggered.
      • CANARY - Shifts traffic in two increments.

      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.

      Returns:
      this
    • deploymentPreference

      @Stability(Stable) public CfnStateMachineAliasProps.Builder deploymentPreference(CfnStateMachineAlias.DeploymentPreferenceProperty deploymentPreference)
      Parameters:
      deploymentPreference - The settings that enable gradual state machine deployments. These settings include Alarms , Interval , Percentage , StateMachineVersionArn , and Type .

      CloudFormation automatically shifts traffic from the version an alias currently points to, to a new state machine version that you specify.

      RoutingConfiguration and DeploymentPreference are mutually exclusive properties. You must define only one of these properties.

      Based on the type of deployment you want to perform, you can specify one of the following settings:

      • LINEAR - Shifts traffic to the new version in equal increments with an equal number of minutes between each increment.

      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 Amazon CloudWatch alarms are triggered.

      • ALL_AT_ONCE - Shifts 100 percent of traffic to the new version immediately. CloudFormation monitors the new version and rolls it back automatically to the previous version if any CloudWatch alarms are triggered.
      • CANARY - Shifts traffic in two increments.

      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.

      Returns:
      this
    • description

      @Stability(Stable) public CfnStateMachineAliasProps.Builder description(String description)
      Parameters:
      description - An optional description of the state machine alias.
      Returns:
      this
    • name

      @Stability(Stable) public CfnStateMachineAliasProps.Builder name(String name)
      Parameters:
      name - The name of the state machine alias. If you don't provide a name, it uses an automatically generated name based on the logical ID.
      Returns:
      this
    • routingConfiguration

      @Stability(Stable) public CfnStateMachineAliasProps.Builder routingConfiguration(IResolvable routingConfiguration)
      Parameters:
      routingConfiguration - The routing configuration of an alias. Routing configuration splits StartExecution requests between one or two versions of the same state machine.

      Use RoutingConfiguration if you want to explicitly set the alias weights . Weight is the percentage of traffic you want to route to a state machine version.

      RoutingConfiguration and DeploymentPreference are mutually exclusive properties. You must define only one of these properties.

      Returns:
      this
    • routingConfiguration

      @Stability(Stable) public CfnStateMachineAliasProps.Builder routingConfiguration(List<? extends Object> routingConfiguration)
      Parameters:
      routingConfiguration - The routing configuration of an alias. Routing configuration splits StartExecution requests between one or two versions of the same state machine.

      Use RoutingConfiguration if you want to explicitly set the alias weights . Weight is the percentage of traffic you want to route to a state machine version.

      RoutingConfiguration and DeploymentPreference are mutually exclusive properties. You must define only one of these properties.

      Returns:
      this
    • build

      @Stability(Stable) public CfnStateMachineAliasProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnStateMachineAliasProps>
      Returns:
      a new instance of CfnStateMachineAliasProps
      Throws:
      NullPointerException - if any required attribute was not provided