Skip to content

Commit 211fc7c

Browse files
committed
adding ec2
1 parent e7cc0ae commit 211fc7c

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -150,13 +150,13 @@ No resources.
150150
| <a name="input_asg"></a> [asg](#input\_asg) | Auto Scaling Group configuration | <pre>object({<br> name = optional(string, null)<br> min_size = number<br> max_size = number<br> desired_capacity = optional(number)<br> vpc_zone_identifier = optional(list(string))<br><br> health_check_type = optional(string)<br> health_check_grace_period = optional(number, 300)<br> protect_from_scale_in = optional(bool)<br> default_cooldown = optional(number)<br><br> instance_refresh = optional(object({<br> strategy = string<br> preferences = optional(object({<br> min_healthy_percentage = optional(number)<br> }))<br> }))<br> })</pre> | `null` | no |
151151
| <a name="input_capacity_provider"></a> [capacity\_provider](#input\_capacity\_provider) | Configuration settings for the ECS capacity providers, including the capacity providers used for autoscaling and Fargate. This variable defines the properties of each capacity provider and how they are managed, such as scaling policies and termination protection. | <pre>object({<br> autoscaling_capacity_providers = map(object({<br> name = optional(string)<br> auto_scaling_group_arn = string<br> managed_termination_protection = optional(string, "DISABLED")<br> managed_draining = optional(string, "ENABLED")<br> managed_scaling = optional(object({<br> instance_warmup_period = optional(number)<br> maximum_scaling_step_size = optional(number)<br> minimum_scaling_step_size = optional(number)<br> status = optional(string)<br> target_capacity = optional(number)<br> }))<br> tags = optional(map(string), {})<br> }))<br> use_fargate = bool<br> fargate_capacity_providers = any<br> })</pre> | `null` | no |
152152
| <a name="input_ecs_cluster"></a> [ecs\_cluster](#input\_ecs\_cluster) | The ECS-specific values to use such as cluster, service, and repository names.<br><br>Keys:<br> - cluster\_name: The name of the ECS cluster.<br> - cluster\_configuration: The execute command configuration for the cluster.<br> - cluster\_settings: A list of cluster settings (e.g., container insights). Default is an empty list.<br> - cluster\_service\_connect\_defaults: Configures a default Service Connect namespace.<br> - create\_cloudwatch\_log\_group: Boolean flag to specify whether to create a CloudWatch log group for the ECS cluster. | <pre>object({<br> name = optional(string)<br> create = optional(bool, true)<br> configuration = optional(object({<br> execute_command_configuration = optional(object({<br> kms_key_id = optional(string, "")<br> logging = optional(string, "DEFAULT")<br> log_configuration = optional(object({<br> cloudwatch_encryption_enabled = optional(bool, null)<br> log_group_name = optional(string, null)<br> log_group_retention_in_days = optional(number, null)<br> log_group_kms_key_id = optional(string, null)<br> log_group_tags = optional(map(string), null)<br> s3_bucket_name = optional(string, null)<br> s3_bucket_encryption_enabled = optional(bool, null)<br> s3_key_prefix = optional(string, null)<br> }), {})<br> }), {})<br> }), {})<br> create_cloudwatch_log_group = optional(bool, true)<br> service_connect_defaults = optional(map(string), null)<br> settings = optional(any, null)<br> tags = optional(map(string), null)<br> })</pre> | n/a | yes |
153-
| <a name="input_ecs_cluster_name"></a> [ecs\_cluster\_name](#input\_ecs\_cluster\_name) | Name of the ECS cluster | `string` | `null` | no |
154-
| <a name="input_ecs_service"></a> [ecs\_service](#input\_ecs\_service) | The ECS-specific values to use such as cluster, service, and repository names. | <pre>object({<br> cluster_name = optional(string)<br> service_name = optional(string)<br> repository_name = optional(string)<br> enable_load_balancer = optional(bool, false)<br> aws_lb_target_group_name = optional(string)<br> ecs_subnets = optional(list(string))<br> create = optional(bool, false)<br> })</pre> | n/a | yes |
153+
| <a name="input_ecs_cluster_name"></a> [ecs\_cluster\_name](#input\_ecs\_cluster\_name) | Name of the ECS cluster to attach services | `string` | `null` | no |
154+
| <a name="input_ecs_service"></a> [ecs\_service](#input\_ecs\_service) | Configuration for the ECS service, including cluster, service name, and load balancer settings. | <pre>object({<br> cluster_name = optional(string)<br> service_name = optional(string)<br> repository_name = optional(string)<br> enable_load_balancer = optional(bool, false)<br> aws_lb_target_group_name = optional(string)<br> ecs_subnets = optional(list(string))<br> create = optional(bool, false)<br> })</pre> | n/a | yes |
155155
| <a name="input_environment"></a> [environment](#input\_environment) | The environment associated with the ECS service | `string` | `null` | no |
156-
| <a name="input_launch_template"></a> [launch\_template](#input\_launch\_template) | n/a | <pre>object({<br> name = string<br> block_device_mappings = optional(list(object({<br> device_name = string<br> ebs = optional(object({<br> volume_size = number<br> }))<br> })), [])<br><br> cpu_options = optional(object({<br> core_count = number<br> threads_per_core = number<br> }), null)<br><br> disable_api_stop = optional(bool, false)<br> disable_api_termination = optional(bool, false)<br> ebs_optimized = optional(bool, false)<br><br> elastic_gpu_specifications = optional(list(object({<br> type = string<br> })), [])<br><br> iam_instance_profile = optional(object({<br> name = string<br> }), null)<br><br> image_id = optional(string, null)<br> instance_initiated_shutdown_behavior = optional(string, "stop")<br><br> instance_type = optional(string, null)<br> kernel_id = optional(string, null)<br> key_name = optional(string, null)<br><br> monitoring = optional(object({<br> enabled = bool<br> }), null)<br><br> network_interfaces = optional(list(object({<br> associate_public_ip_address = optional(bool, null)<br> ipv4_prefixes = optional(list(string), [])<br> ipv6_prefixes = optional(list(string), [])<br> ipv4_addresses = optional(list(string), [])<br> ipv6_addresses = optional(list(string), [])<br> network_interface_id = optional(string, null)<br> private_ip_address = optional(string, null)<br> security_groups = optional(list(string), [])<br> subnet_id = optional(string, null)<br> })), [])<br><br> placement = optional(object({<br> availability_zone = string<br> }), null)<br><br> vpc_security_group_ids = optional(list(string), [])<br><br> tag_specifications = optional(list(object({<br> resource_type = string<br> tags = map(string)<br> })), [])<br><br> user_data = optional(string, null)<br> })</pre> | `null` | no |
157-
| <a name="input_lb_data"></a> [lb\_data](#input\_lb\_data) | ALB-related information (listening port, deletion protection, security group) | <pre>object({<br> listener_port = number<br> deregistration_delay = optional(number)<br> security_group_id = optional(string)<br> })</pre> | `null` | no |
156+
| <a name="input_launch_template"></a> [launch\_template](#input\_launch\_template) | Configuration for the EC2 launch template used in ECS. | <pre>object({<br> name = string<br> block_device_mappings = optional(list(object({<br> device_name = string<br> ebs = optional(object({<br> volume_size = number<br> }))<br> })), [])<br><br> cpu_options = optional(object({<br> core_count = number<br> threads_per_core = number<br> }), null)<br><br> disable_api_stop = optional(bool, false)<br> disable_api_termination = optional(bool, false)<br> ebs_optimized = optional(bool, false)<br><br> elastic_gpu_specifications = optional(list(object({<br> type = string<br> })), [])<br><br> iam_instance_profile = optional(object({<br> name = string<br> }), null)<br><br> image_id = optional(string, null)<br> instance_initiated_shutdown_behavior = optional(string, "stop")<br><br> instance_type = optional(string, null)<br> kernel_id = optional(string, null)<br> key_name = optional(string, null)<br><br> monitoring = optional(object({<br> enabled = bool<br> }), null)<br><br> network_interfaces = optional(list(object({<br> associate_public_ip_address = optional(bool, null)<br> ipv4_prefixes = optional(list(string), [])<br> ipv6_prefixes = optional(list(string), [])<br> ipv4_addresses = optional(list(string), [])<br> ipv6_addresses = optional(list(string), [])<br> network_interface_id = optional(string, null)<br> private_ip_address = optional(string, null)<br> security_groups = optional(list(string), [])<br> subnet_id = optional(string, null)<br> })), [])<br><br> placement = optional(object({<br> availability_zone = string<br> }), null)<br><br> vpc_security_group_ids = optional(list(string), [])<br><br> tag_specifications = optional(list(object({<br> resource_type = string<br> tags = map(string)<br> })), [])<br><br> user_data = optional(string, null)<br> })</pre> | `null` | no |
157+
| <a name="input_lb_data"></a> [lb\_data](#input\_lb\_data) | Load balancer configuration including listener port and security group. | <pre>object({<br> listener_port = number<br> deregistration_delay = optional(number)<br> security_group_id = optional(string)<br> })</pre> | `null` | no |
158158
| <a name="input_tags"></a> [tags](#input\_tags) | A map of tags to add to all resources | `map(string)` | `{}` | no |
159-
| <a name="input_target_group_arn"></a> [target\_group\_arn](#input\_target\_group\_arn) | ARN of the target group | `string` | `null` | no |
159+
| <a name="input_target_group_arn"></a> [target\_group\_arn](#input\_target\_group\_arn) | ARN of the target group used for the ECS service. | `string` | `null` | no |
160160
| <a name="input_task"></a> [task](#input\_task) | Task-related information (vCPU, memory, # of tasks, port, and health check info.) | <pre>object({<br> tasks_desired = optional(number)<br> launch_type = optional(string)<br> network_mode = optional(string)<br> compatibilities = optional(list(string))<br> container_vcpu = optional(number)<br> container_memory = optional(number)<br> container_port = number<br> container_health_check_path = optional(string)<br> container_definition = optional(string)<br> environment_variables = optional(map(string))<br> secrets = optional(map(string))<br> task_execution_role = optional(string)<br> })</pre> | `null` | no |
161161
| <a name="input_vpc_id"></a> [vpc\_id](#input\_vpc\_id) | ID of VPC in which all resources need to be created | `string` | `null` | no |
162162

variables.tf

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,12 +69,13 @@ variable "capacity_provider" {
6969
}
7070

7171
variable "target_group_arn" {
72-
description = "ARN of the target group"
72+
description = "ARN of the target group used for the ECS service."
7373
type = string
7474
default = null
7575
}
7676

7777
variable "launch_template" {
78+
description = "Configuration for the EC2 launch template used in ECS."
7879
type = object({
7980
name = string
8081
block_device_mappings = optional(list(object({
@@ -190,7 +191,7 @@ variable "ecs_service" {
190191
ecs_subnets = optional(list(string))
191192
create = optional(bool, false)
192193
})
193-
description = "The ECS-specific values to use such as cluster, service, and repository names."
194+
description = "Configuration for the ECS service, including cluster, service name, and load balancer settings."
194195
}
195196

196197
# Task-specific variables
@@ -215,7 +216,7 @@ variable "task" {
215216
}
216217

217218
variable "ecs_cluster_name" {
218-
description = "Name of the ECS cluster"
219+
description = "Name of the ECS cluster to attach services"
219220
type = string
220221
default = null
221222
}
@@ -228,5 +229,5 @@ variable "lb_data" {
228229
security_group_id = optional(string)
229230
})
230231
default = null
231-
description = "ALB-related information (listening port, deletion protection, security group)"
232+
description = "Load balancer configuration including listener port and security group."
232233
}

0 commit comments

Comments
 (0)