# TimeBasedCanaryTrafficRouting

Define a traffic routing config of type 'TimeBasedCanary'.

Extends: TrafficRouting › TimeBasedCanaryTrafficRouting

- Source: [`aws-codedeploy/lib/traffic-routing-config.ts`](https://github.com/aws/aws-cdk/blob/v2.274.0/packages/aws-cdk-lib/aws-codedeploy/lib/traffic-routing-config.ts#L128)
- Type last changed: v2.45.0 · 6 Oct 2022

## Example

```ts
const config = new codedeploy.LambdaDeploymentConfig(this, 'CustomConfig', {
  trafficRouting: new codedeploy.TimeBasedCanaryTrafficRouting({
    interval: Duration.minutes(15),
    percentage: 5,
  }),
  deploymentConfigName: 'MyDeploymentConfig',
});
```

## Initializer

```ts
new TimeBasedCanaryTrafficRouting(props: TimeBasedCanaryTrafficRoutingProps)
```

## Properties

- `interval`: [Duration](/cdk/api/v2/docs/aws-cdk-lib.Duration.html) (required) — The amount of time between additional traffic shifts.

- `percentage`: number (required) — The percentage to increase traffic on each traffic shift.

## Methods

- `allAtOnce(): TrafficRouting` (static) — Shifts 100% of traffic in a single shift.

- `bind(_scope: Construct): TrafficRoutingConfig` — Return a TrafficRoutingConfig of type `TimeBasedCanary`.

- `timeBasedCanary(props: TimeBasedCanaryTrafficRoutingProps): TrafficRouting` (static) — Shifts a specified percentage of traffic, waits for a specified amount of time, then shifts the rest of traffic.

- `timeBasedLinear(props: TimeBasedLinearTrafficRoutingProps): TrafficRouting` (static) — Keeps shifting a specified percentage of traffic until reaching 100%, waiting for a specified amount of time in between each traffic shift.
