Class: AWSCDK::ECSPatterns::ApplicationLoadBalancedEC2Service
- Inherits:
-
ApplicationLoadBalancedServiceBase
- Object
- ApplicationLoadBalancedServiceBase
- AWSCDK::ECSPatterns::ApplicationLoadBalancedEC2Service
- Defined in:
- ecs_patterns/application_load_balanced_ec2_service.rb
Overview
An EC2 service running on an ECS cluster fronted by an application load balancer.
Class Method Summary collapse
Instance Method Summary collapse
-
#add_service_as_target(service) ⇒ void
Adds service as a target of the target group.
-
#certificate ⇒ AWSCDK::CertificateManager::ICertificate?
Certificate Manager certificate to associate with the load balancer.
-
#cluster ⇒ AWSCDK::ECS::ICluster
The cluster that hosts the service.
- #create_aws_log_driver(prefix) ⇒ AWSCDK::ECS::AWSLogDriver
-
#get_default_cluster(scope, vpc = nil) ⇒ AWSCDK::ECS::Cluster
Returns the default cluster.
-
#initialize(scope, id, props = nil) ⇒ ApplicationLoadBalancedEC2Service
constructor
Constructs a new instance of the ApplicationLoadBalancedEc2Service class.
-
#internal_desired_count ⇒ Numeric?
The desired number of instantiations of the task definition to keep running on the service.
-
#listener ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationListener
The listener for the service.
-
#load_balancer ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationLoadBalancer
The Application Load Balancer for the service.
-
#node ⇒ Constructs::Node
The tree node.
-
#redirect_listener ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationListener?
The redirect listener for the service if redirectHTTP is enabled.
-
#service ⇒ AWSCDK::ECS::EC2Service
The EC2 service in this construct.
-
#target_group ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationTargetGroup
The target group for the service.
-
#task_definition ⇒ AWSCDK::ECS::EC2TaskDefinition
The EC2 Task Definition in this construct.
-
#to_string ⇒ String
Returns a string representation of this construct.
-
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Constructor Details
#initialize(scope, id, props = nil) ⇒ ApplicationLoadBalancedEC2Service
Constructs a new instance of the ApplicationLoadBalancedEc2Service class.
13 14 15 16 17 18 19 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 13 def initialize(scope, id, props = nil) props = props.is_a?(Hash) ? ::AWSCDK::ECSPatterns::ApplicationLoadBalancedEC2ServiceProps.new(**props.transform_keys(&:to_sym)) : props Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope") Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id") Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzX3BhdHRlcm5zLkFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkRWMyU2VydmljZVByb3BzIn0=")), "props") unless props.nil? Jsii::Object.instance_method(:initialize).bind(self).call(scope, id, props) end |
Class Method Details
.jsii_overridable_methods ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 21 def self.jsii_overridable_methods { :node => { kind: :property, name: "node", is_optional: false }, :cluster => { kind: :property, name: "cluster", is_optional: false }, :listener => { kind: :property, name: "listener", is_optional: false }, :load_balancer => { kind: :property, name: "loadBalancer", is_optional: false }, :target_group => { kind: :property, name: "targetGroup", is_optional: false }, :certificate => { kind: :property, name: "certificate", is_optional: true }, :internal_desired_count => { kind: :property, name: "internalDesiredCount", is_optional: true }, :redirect_listener => { kind: :property, name: "redirectListener", is_optional: true }, :service => { kind: :property, name: "service", is_optional: false }, :task_definition => { kind: :property, name: "taskDefinition", is_optional: false }, :to_string => { kind: :method, name: "toString", is_optional: false }, :with => { kind: :method, name: "with", is_optional: false }, :add_service_as_target => { kind: :method, name: "addServiceAsTarget", is_optional: false }, :create_aws_log_driver => { kind: :method, name: "createAWSLogDriver", is_optional: false }, :get_default_cluster => { kind: :method, name: "getDefaultCluster", is_optional: false }, } end |
Instance Method Details
#add_service_as_target(service) ⇒ void
This method returns an undefined value.
Adds service as a target of the target group.
141 142 143 144 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 141 def add_service_as_target(service) Jsii::Type.check_type(service, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWNzLkJhc2VTZXJ2aWNlIn0=")), "service") jsii_call_method("addServiceAsTarget", [service]) end |
#certificate ⇒ AWSCDK::CertificateManager::ICertificate?
Certificate Manager certificate to associate with the load balancer.
79 80 81 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 79 def certificate() jsii_get_property("certificate") end |
#cluster ⇒ AWSCDK::ECS::ICluster
The cluster that hosts the service.
51 52 53 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 51 def cluster() jsii_get_property("cluster") end |
#create_aws_log_driver(prefix) ⇒ AWSCDK::ECS::AWSLogDriver
148 149 150 151 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 148 def create_aws_log_driver(prefix) Jsii::Type.check_type(prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "prefix") jsii_call_method("createAWSLogDriver", [prefix]) end |
#get_default_cluster(scope, vpc = nil) ⇒ AWSCDK::ECS::Cluster
Returns the default cluster.
158 159 160 161 162 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 158 def get_default_cluster(scope, vpc = nil) Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope") Jsii::Type.check_type(vpc, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZWMyLklWcGMifQ==")), "vpc") unless vpc.nil? jsii_call_method("getDefaultCluster", [scope, vpc]) end |
#internal_desired_count ⇒ Numeric?
The desired number of instantiations of the task definition to keep running on the service.
The default is 1 for all new services and uses the existing services desired count when updating an existing service if one is not provided.
89 90 91 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 89 def internal_desired_count() jsii_get_property("internalDesiredCount") end |
#listener ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationListener
The listener for the service.
58 59 60 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 58 def listener() jsii_get_property("listener") end |
#load_balancer ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationLoadBalancer
The Application Load Balancer for the service.
65 66 67 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 65 def load_balancer() jsii_get_property("loadBalancer") end |
#node ⇒ Constructs::Node
The tree node.
44 45 46 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 44 def node() jsii_get_property("node") end |
#redirect_listener ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationListener?
The redirect listener for the service if redirectHTTP is enabled.
96 97 98 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 96 def redirect_listener() jsii_get_property("redirectListener") end |
#service ⇒ AWSCDK::ECS::EC2Service
The EC2 service in this construct.
103 104 105 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 103 def service() jsii_get_property("service") end |
#target_group ⇒ AWSCDK::ElasticLoadBalancingv2::ApplicationTargetGroup
The target group for the service.
72 73 74 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 72 def target_group() jsii_get_property("targetGroup") end |
#task_definition ⇒ AWSCDK::ECS::EC2TaskDefinition
The EC2 Task Definition in this construct.
110 111 112 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 110 def task_definition() jsii_get_property("taskDefinition") end |
#to_string ⇒ String
Returns a string representation of this construct.
117 118 119 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 117 def to_string() jsii_call_method("toString", []) end |
#with(*mixins) ⇒ Constructs::IConstruct
Applies one or more mixins to this construct.
Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple with() calls if subsequent mixins should apply to added
constructs.
130 131 132 133 134 135 |
# File 'ecs_patterns/application_load_balanced_ec2_service.rb', line 130 def with(*mixins) mixins.each_with_index do |item, index| Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklNaXhpbiJ9")), "mixins[#{index}]") end jsii_call_method("with", [*mixins]) end |