Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cn-terraform/terraform-aws-ecs-cluster

AWS ECS Cluster Terraform Module
https://github.com/cn-terraform/terraform-aws-ecs-cluster

amazon-web-services aws ecs ecs-cluster terraform terraform-module

Last synced: 1 day ago
JSON representation

AWS ECS Cluster Terraform Module

Awesome Lists containing this project

README

        

# AWS ECS Cluster Terraform Module #

This Terraform module creates an AWS ECS cluster.

[![](https://github.com/cn-terraform/terraform-aws-ecs-cluster/workflows/terraform/badge.svg)](https://github.com/cn-terraform/terraform-aws-ecs-cluster/actions?query=workflow%3Aterraform)
[![](https://img.shields.io/github/license/cn-terraform/terraform-aws-ecs-cluster)](https://github.com/cn-terraform/terraform-aws-ecs-cluster)
[![](https://img.shields.io/github/issues/cn-terraform/terraform-aws-ecs-cluster)](https://github.com/cn-terraform/terraform-aws-ecs-cluster)
[![](https://img.shields.io/github/issues-closed/cn-terraform/terraform-aws-ecs-cluster)](https://github.com/cn-terraform/terraform-aws-ecs-cluster)
[![](https://img.shields.io/github/languages/code-size/cn-terraform/terraform-aws-ecs-cluster)](https://github.com/cn-terraform/terraform-aws-ecs-cluster)
[![](https://img.shields.io/github/repo-size/cn-terraform/terraform-aws-ecs-cluster)](https://github.com/cn-terraform/terraform-aws-ecs-cluster)

## Usage

Check valid versions on:
* Github Releases:
* Terraform Module Registry:

## Install pre commit hooks.

Pleas run this command right after cloning the repository.

pre-commit install

For that you may need to install the folowwing tools:
* [Pre-commit](https://pre-commit.com/)
* [Terraform Docs](https://terraform-docs.io/)

In order to run all checks at any point run the following command:

pre-commit run --all-files

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.13 |
| [aws](#requirement\_aws) | >= 4 |

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | 5.15.0 |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [aws_ecs_cluster.cluster](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecs_cluster) | resource |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [configuration](#input\_configuration) | (Optional) The execute command configuration for the cluster. |

object({
# The details of the execute command configuration.
execute_command_configuration = object({
# The AWS Key Management Service key ID to encrypt the data between the local client and the container.
kms_key_id = optional(string)
# The log configuration for the results of the execute command actions Required when logging is OVERRIDE.
log_configuration = object({
# Whether or not to enable encryption on the CloudWatch logs. If not specified, encryption will be disabled.
cloud_watch_encryption_enabled = optional(bool)
# The name of the CloudWatch log group to send logs to.
cloud_watch_log_group_name = optional(string)
# The name of the S3 bucket to send logs to.
s3_bucket_name = optional(string)
# Whether or not to enable encryption on the logs sent to S3. If not specified, encryption will be disabled.
s3_bucket_encryption_enabled = optional(bool)
# An optional folder in the S3 bucket to place logs in.
s3_key_prefix = optional(string)
})
# The log setting to use for redirecting logs for your execute command results. Valid values are NONE, DEFAULT, and OVERRIDE.
logging = optional(string)
})
})
| `null` | no |
| [containerInsights](#input\_containerInsights) | (Optional) Enables container insights if true | `bool` | `false` | no |
| [name](#input\_name) | (Required) Name of the cluster (up to 255 letters, numbers, hyphens, and underscores). | `any` | n/a | yes |
| [service\_connect\_defaults](#input\_service\_connect\_defaults) | (Optional) Configures a default Service Connect namespace. |
object({
# The ARN of the aws_service_discovery_http_namespace that's used when you create a service and don't specify a Service Connect configuration.
namespace = string
})
| `null` | no |
| [tags](#input\_tags) | Resource tags | `map(string)` | `{}` | no |

## Outputs

| Name | Description |
|------|-------------|
| [aws\_ecs\_cluster\_cluster\_arn](#output\_aws\_ecs\_cluster\_cluster\_arn) | The Amazon Resource Name (ARN) that identifies the cluster |
| [aws\_ecs\_cluster\_cluster\_id](#output\_aws\_ecs\_cluster\_cluster\_id) | The Amazon ID that identifies the cluster |
| [aws\_ecs\_cluster\_cluster\_name](#output\_aws\_ecs\_cluster\_cluster\_name) | The name of the cluster |