Class: AWSCDK::ECS::CfnService::AdvancedConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ecs/cfn_service.rb

Overview

The advanced settings for a load balancer used in blue/green deployments.

Specify the alternate target group, listener rules, and IAM role required for traffic shifting during blue/green deployments. For more information, see Required resources for Amazon ECS blue/green deployments in the Amazon Elastic Container Service Developer Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(alternate_target_group_arn:, production_listener_rule: nil, role_arn: nil, test_listener_rule: nil) ⇒ AdvancedConfigurationProperty

Returns a new instance of AdvancedConfigurationProperty.

Parameters:

  • alternate_target_group_arn (String)

    The Amazon Resource Name (ARN) of the alternate target group for Amazon ECS blue/green deployments.

  • production_listener_rule (String, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) that that identifies the production listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing production traffic.

  • role_arn (String, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call the Elastic Load Balancing APIs for you.

  • test_listener_rule (String, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) that identifies ) that identifies the test listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing test traffic.



907
908
909
910
911
912
913
914
915
916
# File 'ecs/cfn_service.rb', line 907

def initialize(alternate_target_group_arn:, production_listener_rule: nil, role_arn: nil, test_listener_rule: nil)
  @alternate_target_group_arn = alternate_target_group_arn
  Jsii::Type.check_type(@alternate_target_group_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "alternateTargetGroupArn")
  @production_listener_rule = production_listener_rule
  Jsii::Type.check_type(@production_listener_rule, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "productionListenerRule") unless @production_listener_rule.nil?
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil?
  @test_listener_rule = test_listener_rule
  Jsii::Type.check_type(@test_listener_rule, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "testListenerRule") unless @test_listener_rule.nil?
end

Instance Attribute Details

#alternate_target_group_arnString (readonly)

The Amazon Resource Name (ARN) of the alternate target group for Amazon ECS blue/green deployments.



922
923
924
# File 'ecs/cfn_service.rb', line 922

def alternate_target_group_arn
  @alternate_target_group_arn
end

#production_listener_ruleString? (readonly)

The Amazon Resource Name (ARN) that that identifies the production listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing production traffic.



927
928
929
# File 'ecs/cfn_service.rb', line 927

def production_listener_rule
  @production_listener_rule
end

#role_arnString? (readonly)

The Amazon Resource Name (ARN) of the IAM role that grants Amazon ECS permission to call the Elastic Load Balancing APIs for you.



932
933
934
# File 'ecs/cfn_service.rb', line 932

def role_arn
  @role_arn
end

#test_listener_ruleString? (readonly)

The Amazon Resource Name (ARN) that identifies ) that identifies the test listener rule (in the case of an Application Load Balancer) or listener (in the case for an Network Load Balancer) for routing test traffic.



937
938
939
# File 'ecs/cfn_service.rb', line 937

def test_listener_rule
  @test_listener_rule
end

Class Method Details

.jsii_propertiesObject



939
940
941
942
943
944
945
946
# File 'ecs/cfn_service.rb', line 939

def self.jsii_properties
  {
    :alternate_target_group_arn => "alternateTargetGroupArn",
    :production_listener_rule => "productionListenerRule",
    :role_arn => "roleArn",
    :test_listener_rule => "testListenerRule",
  }
end

Instance Method Details

#to_jsiiObject



948
949
950
951
952
953
954
955
956
957
# File 'ecs/cfn_service.rb', line 948

def to_jsii
  result = {}
  result.merge!({
    "alternateTargetGroupArn" => @alternate_target_group_arn,
    "productionListenerRule" => @production_listener_rule,
    "roleArn" => @role_arn,
    "testListenerRule" => @test_listener_rule,
  })
  result.compact
end