Class: AWSCDK::APIGateway::CfnDeployment::DeploymentCanarySettingsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
api_gateway/cfn_deployment.rb

Overview

The DeploymentCanarySettings property type specifies settings for the canary deployment.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(percent_traffic: nil, stage_variable_overrides: nil, use_stage_cache: nil) ⇒ DeploymentCanarySettingsProperty

Returns a new instance of DeploymentCanarySettingsProperty.

Parameters:

  • percent_traffic (Numeric, nil) (defaults to: nil)

    The percentage (0.0-100.0) of traffic routed to the canary deployment.

  • stage_variable_overrides (AWSCDK::IResolvable, Hash{String => String}, nil) (defaults to: nil)

    A stage variable overrides used for the canary release deployment.

  • use_stage_cache (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.



666
667
668
669
670
671
672
673
# File 'api_gateway/cfn_deployment.rb', line 666

def initialize(percent_traffic: nil, stage_variable_overrides: nil, use_stage_cache: nil)
  @percent_traffic = percent_traffic
  Jsii::Type.check_type(@percent_traffic, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "percentTraffic") unless @percent_traffic.nil?
  @stage_variable_overrides = stage_variable_overrides
  Jsii::Type.check_type(@stage_variable_overrides, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "stageVariableOverrides") unless @stage_variable_overrides.nil?
  @use_stage_cache = use_stage_cache
  Jsii::Type.check_type(@use_stage_cache, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "useStageCache") unless @use_stage_cache.nil?
end

Instance Attribute Details

#percent_trafficNumeric? (readonly)

The percentage (0.0-100.0) of traffic routed to the canary deployment.



679
680
681
# File 'api_gateway/cfn_deployment.rb', line 679

def percent_traffic
  @percent_traffic
end

#stage_variable_overridesAWSCDK::IResolvable, ... (readonly)

A stage variable overrides used for the canary release deployment.

They can override existing stage variables or add new stage variables for the canary release deployment. These stage variables are represented as a string-to-string map between stage variable names and their values.



686
687
688
# File 'api_gateway/cfn_deployment.rb', line 686

def stage_variable_overrides
  @stage_variable_overrides
end

#use_stage_cacheBoolean, ... (readonly)

A Boolean flag to indicate whether the canary release deployment uses the stage cache or not.



691
692
693
# File 'api_gateway/cfn_deployment.rb', line 691

def use_stage_cache
  @use_stage_cache
end

Class Method Details

.jsii_propertiesObject



693
694
695
696
697
698
699
# File 'api_gateway/cfn_deployment.rb', line 693

def self.jsii_properties
  {
    :percent_traffic => "percentTraffic",
    :stage_variable_overrides => "stageVariableOverrides",
    :use_stage_cache => "useStageCache",
  }
end

Instance Method Details

#to_jsiiObject



701
702
703
704
705
706
707
708
709
# File 'api_gateway/cfn_deployment.rb', line 701

def to_jsii
  result = {}
  result.merge!({
    "percentTraffic" => @percent_traffic,
    "stageVariableOverrides" => @stage_variable_overrides,
    "useStageCache" => @use_stage_cache,
  })
  result.compact
end