All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.apigateway.kotlin.outputs.DeploymentCanarySetting.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.apigateway.kotlin.outputs

import kotlin.Boolean
import kotlin.Double
import kotlin.String
import kotlin.Suppress
import kotlin.collections.Map

/**
 * The ``CanarySetting`` property type specifies settings for the canary deployment in this stage.
 *  ``CanarySetting`` is a property of the [StageDescription](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-deployment-stagedescription.html) property type.
 * @property percentTraffic The percent (0-100) of traffic diverted to a canary deployment.
 * @property stageVariableOverrides Stage variables overridden for a canary release deployment, including new stage variables introduced in the canary. These stage variables are represented as a string-to-string map between stage variable names and their values.
 * @property useStageCache A Boolean flag to indicate whether the canary deployment uses the stage cache or not.
 */
public data class DeploymentCanarySetting(
    public val percentTraffic: Double? = null,
    public val stageVariableOverrides: Map? = null,
    public val useStageCache: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.apigateway.outputs.DeploymentCanarySetting): DeploymentCanarySetting = DeploymentCanarySetting(
            percentTraffic = javaType.percentTraffic().map({ args0 -> args0 }).orElse(null),
            stageVariableOverrides = javaType.stageVariableOverrides().map({ args0 ->
                args0.key.to(args0.value)
            }).toMap(),
            useStageCache = javaType.useStageCache().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy