Skip to content
v2.273.0

TimeBasedCanaryTrafficRouting Class ​

Define a traffic routing config of type 'TimeBasedCanary'.

Example ​

ts
const config = new codedeploy.LambdaDeploymentConfig(this, 'CustomConfig', {
  trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({
    interval: Duration.minutes(15),
    percentage: 5,
  }),
  deploymentConfigName: 'MyDeploymentConfig',
});
python
config = codedeploy.LambdaDeploymentConfig(self, "CustomConfig",
    traffic_routing=codedeploy.TimeBasedCanaryTrafficRouting(
        interval=Duration.minutes(15),
        percentage=5
    ),
    deployment_config_name="MyDeploymentConfig"
)
java
LambdaDeploymentConfig config = LambdaDeploymentConfig.Builder.create(this, "CustomConfig")
        .trafficRouting(TimeBasedCanaryTrafficRouting.Builder.create()
                .interval(Duration.minutes(15))
                .percentage(5)
                .build())
        .deploymentConfigName("MyDeploymentConfig")
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
var config = new LambdaDeploymentConfig(this, "CustomConfig", new LambdaDeploymentConfigProps {
    TrafficRouting = new TimeBasedCanaryTrafficRouting(new TimeBasedCanaryTrafficRoutingProps {
        Interval = Duration.Minutes(15),
        Percentage = 5
    }),
    DeploymentConfigName = "MyDeploymentConfig"
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
config := codedeploy.NewLambdaDeploymentConfig(this, jsii.String("CustomConfig"), &LambdaDeploymentConfigProps{
	TrafficRouting: codedeploy.NewTimeBasedCanaryTrafficRouting(&TimeBasedCanaryTrafficRoutingProps{
		Interval: awscdk.Duration_Minutes(jsii.Number(15)),
		Percentage: jsii.Number(5),
	}),
	DeploymentConfigName: jsii.String("MyDeploymentConfig"),
})

Initializer ​

ts
new TimeBasedCanaryTrafficRouting(props: TimeBasedCanaryTrafficRoutingProps)
python
TimeBasedCanaryTrafficRouting(props: TimeBasedCanaryTrafficRoutingProps)
java
new TimeBasedCanaryTrafficRouting(TimeBasedCanaryTrafficRoutingProps props)
csharp
new TimeBasedCanaryTrafficRouting(TimeBasedCanaryTrafficRoutingProps props)
go
NewTimeBasedCanaryTrafficRouting(Props TimeBasedCanaryTrafficRoutingProps)

Properties ​

intervalDurationintervalDurationintervalDurationIntervalDurationIntervalDurationrequired#
The amount of time between additional traffic shifts.
percentagenumberpercentageint | floatpercentageNumberPercentagedoublePercentage*float64required#
The percentage to increase traffic on each traffic shift.

Methods ​

allAtOnce(): TrafficRouting@staticmethod def all_at_once() -> TrafficRoutingpublic static TrafficRouting allAtOnce()public static TrafficRouting AllAtOnce()func AllAtOnce() TrafficRoutingstatic#
Shifts 100% of traffic in a single shift.
bind(_scope: Construct): TrafficRoutingConfigdef bind(self, _scope: Construct) -> TrafficRoutingConfigpublic TrafficRoutingConfig bind(Construct _scope)public TrafficRoutingConfig Bind(Construct _scope)func Bind(_scope Construct) TrafficRoutingConfig#
Return a TrafficRoutingConfig of type `TimeBasedCanary`.
timeBasedCanary(props: TimeBasedCanaryTrafficRoutingProps): TrafficRouting@staticmethod def time_based_canary(props: TimeBasedCanaryTrafficRoutingProps) -> TrafficRoutingpublic static TrafficRouting timeBasedCanary(TimeBasedCanaryTrafficRoutingProps props)public static TrafficRouting TimeBasedCanary(TimeBasedCanaryTrafficRoutingProps props)func TimeBasedCanary(Props TimeBasedCanaryTrafficRoutingProps) TrafficRoutingstatic#
Shifts a specified percentage of traffic, waits for a specified amount of time, then shifts the rest of traffic.
timeBasedLinear(props: TimeBasedLinearTrafficRoutingProps): TrafficRouting@staticmethod def time_based_linear(props: TimeBasedLinearTrafficRoutingProps) -> TrafficRoutingpublic static TrafficRouting timeBasedLinear(TimeBasedLinearTrafficRoutingProps props)public static TrafficRouting TimeBasedLinear(TimeBasedLinearTrafficRoutingProps props)func TimeBasedLinear(Props TimeBasedLinearTrafficRoutingProps) TrafficRoutingstatic#
Keeps shifting a specified percentage of traffic until reaching 100%, waiting for a specified amount of time in between each traffic shift.