Skip to content

Commit

Permalink
feat: add appProtocol and name to var.port_mappings
Browse files Browse the repository at this point in the history
  • Loading branch information
jtribble committed Sep 27, 2023
1 parent 19bc586 commit 6c25559
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 16 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ No resources.
|------|-------------|------|---------|:--------:|
| <a name="input_command"></a> [command](#input\_command) | The command that is passed to the container | `list(string)` | `null` | no |
| <a name="input_container_cpu"></a> [container\_cpu](#input\_container\_cpu) | The number of cpu units to reserve for the container. This is optional for tasks using Fargate launch type and the total amount of container\_cpu of all containers in a task will need to be lower than the task-level cpu value | `number` | `0` | no |
| <a name="input_container_definition"></a> [container\_definition](#input\_container\_definition) | Container definition overrides which allows for extra keys or overriding existing keys. | <pre>object({<br> command = optional(list(string))<br> cpu = optional(number)<br> dependsOn = optional(list(object({<br> condition = string<br> containerName = string<br> })))<br> disableNetworking = optional(bool)<br> dnsSearchDomains = optional(list(string))<br> dnsServers = optional(list(string))<br> dockerLabels = optional(map(string))<br> dockerSecurityOptions = optional(list(string))<br> entryPoint = optional(list(string))<br> environment = optional(list(object({<br> name = string<br> value = string<br> })))<br> environmentFiles = optional(list(object({<br> type = string<br> value = string<br> })))<br> essential = optional(bool)<br> extraHosts = optional(list(object({<br> hostname = string<br> ipAddress = string<br> })))<br> firelensConfiguration = optional(object({<br> options = optional(map(string))<br> type = string<br> }))<br> healthCheck = optional(object({<br> command = list(string)<br> interval = optional(number)<br> retries = optional(number)<br> startPeriod = optional(number)<br> timeout = optional(number)<br> }))<br> hostname = optional(string)<br> image = optional(string)<br> interactive = optional(bool)<br> links = optional(list(string))<br> linuxParameters = optional(object({<br> capabilities = optional(object({<br> add = optional(list(string))<br> drop = optional(list(string))<br> }))<br> devices = optional(list(object({<br> containerPath = string<br> hostPath = string<br> permissions = optional(list(string))<br> })))<br> initProcessEnabled = optional(bool)<br> maxSwap = optional(number)<br> sharedMemorySize = optional(number)<br> swappiness = optional(number)<br> tmpfs = optional(list(object({<br> containerPath = string<br> mountOptions = optional(list(string))<br> size = number<br> })))<br> }))<br> logConfiguration = optional(object({<br> logDriver = string<br> options = optional(map(string))<br> secretOptions = optional(list(object({<br> name = string<br> valueFrom = string<br> })))<br> }))<br> memory = optional(number)<br> memoryReservation = optional(number)<br> mountPoints = optional(list(object({<br> containerPath = optional(string)<br> readOnly = optional(bool)<br> sourceVolume = optional(string)<br> })))<br> name = optional(string)<br> portMappings = optional(list(object({<br> name = optional(string)<br> containerPort = number<br> hostPort = optional(number)<br> protocol = optional(string)<br> })))<br> privileged = optional(bool)<br> pseudoTerminal = optional(bool)<br> readonlyRootFilesystem = optional(bool)<br> repositoryCredentials = optional(object({<br> credentialsParameter = string<br> }))<br> resourceRequirements = optional(list(object({<br> type = string<br> value = string<br> })))<br> secrets = optional(list(object({<br> name = string<br> valueFrom = string<br> })))<br> startTimeout = optional(number)<br> stopTimeout = optional(number)<br> systemControls = optional(list(object({<br> namespace = string<br> value = string<br> })))<br> ulimits = optional(list(object({<br> hardLimit = number<br> name = string<br> softLimit = number<br> })))<br> user = optional(string)<br> volumesFrom = optional(list(object({<br> readOnly = optional(bool)<br> sourceContainer = string<br> })))<br> workingDirectory = optional(string)<br> })</pre> | `{}` | no |
| <a name="input_container_definition"></a> [container\_definition](#input\_container\_definition) | Container definition overrides which allows for extra keys or overriding existing keys. | <pre>object({<br> command = optional(list(string))<br> cpu = optional(number)<br> dependsOn = optional(list(object({<br> condition = string<br> containerName = string<br> })))<br> disableNetworking = optional(bool)<br> dnsSearchDomains = optional(list(string))<br> dnsServers = optional(list(string))<br> dockerLabels = optional(map(string))<br> dockerSecurityOptions = optional(list(string))<br> entryPoint = optional(list(string))<br> environment = optional(list(object({<br> name = string<br> value = string<br> })))<br> environmentFiles = optional(list(object({<br> type = string<br> value = string<br> })))<br> essential = optional(bool)<br> extraHosts = optional(list(object({<br> hostname = string<br> ipAddress = string<br> })))<br> firelensConfiguration = optional(object({<br> options = optional(map(string))<br> type = string<br> }))<br> healthCheck = optional(object({<br> command = list(string)<br> interval = optional(number)<br> retries = optional(number)<br> startPeriod = optional(number)<br> timeout = optional(number)<br> }))<br> hostname = optional(string)<br> image = optional(string)<br> interactive = optional(bool)<br> links = optional(list(string))<br> linuxParameters = optional(object({<br> capabilities = optional(object({<br> add = optional(list(string))<br> drop = optional(list(string))<br> }))<br> devices = optional(list(object({<br> containerPath = string<br> hostPath = string<br> permissions = optional(list(string))<br> })))<br> initProcessEnabled = optional(bool)<br> maxSwap = optional(number)<br> sharedMemorySize = optional(number)<br> swappiness = optional(number)<br> tmpfs = optional(list(object({<br> containerPath = string<br> mountOptions = optional(list(string))<br> size = number<br> })))<br> }))<br> logConfiguration = optional(object({<br> logDriver = string<br> options = optional(map(string))<br> secretOptions = optional(list(object({<br> name = string<br> valueFrom = string<br> })))<br> }))<br> memory = optional(number)<br> memoryReservation = optional(number)<br> mountPoints = optional(list(object({<br> containerPath = optional(string)<br> readOnly = optional(bool)<br> sourceVolume = optional(string)<br> })))<br> name = optional(string)<br> portMappings = optional(list(object({<br> containerPort = optional(number)<br> hostPort = optional(number)<br> protocol = optional(string) # tcp (default), udp<br> name = optional(string)<br> appProtocol = optional(string) # http, http2, grpc (defaults to tcp)<br> containerPortRange = optional(string)<br> })))<br> privileged = optional(bool)<br> pseudoTerminal = optional(bool)<br> readonlyRootFilesystem = optional(bool)<br> repositoryCredentials = optional(object({<br> credentialsParameter = string<br> }))<br> resourceRequirements = optional(list(object({<br> type = string<br> value = string<br> })))<br> secrets = optional(list(object({<br> name = string<br> valueFrom = string<br> })))<br> startTimeout = optional(number)<br> stopTimeout = optional(number)<br> systemControls = optional(list(object({<br> namespace = string<br> value = string<br> })))<br> ulimits = optional(list(object({<br> hardLimit = number<br> name = string<br> softLimit = number<br> })))<br> user = optional(string)<br> volumesFrom = optional(list(object({<br> readOnly = optional(bool)<br> sourceContainer = string<br> })))<br> workingDirectory = optional(string)<br> })</pre> | `{}` | no |
| <a name="input_container_depends_on"></a> [container\_depends\_on](#input\_container\_depends\_on) | The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed. The condition can be one of START, COMPLETE, SUCCESS or HEALTHY | <pre>list(object({<br> condition = string<br> containerName = string<br> }))</pre> | `null` | no |
| <a name="input_container_image"></a> [container\_image](#input\_container\_image) | The image used to start the container. Images in the Docker Hub registry available by default | `string` | n/a | yes |
| <a name="input_container_memory"></a> [container\_memory](#input\_container\_memory) | The amount of memory (in MiB) to allow the container to use. This is a hard limit, if the container attempts to exceed the container\_memory, the container is killed. This field is optional for Fargate launch type and the total amount of container\_memory of all containers in a task will need to be lower than the task memory value | `number` | `null` | no |
Expand All @@ -200,7 +200,7 @@ No resources.
| <a name="input_map_environment"></a> [map\_environment](#input\_map\_environment) | The environment variables to pass to the container. This is a map of string: {key: value}. map\_environment overrides environment | `map(string)` | `null` | no |
| <a name="input_map_secrets"></a> [map\_secrets](#input\_map\_secrets) | The secrets variables to pass to the container. This is a map of string: {key: value}. map\_secrets overrides secrets | `map(string)` | `null` | no |
| <a name="input_mount_points"></a> [mount\_points](#input\_mount\_points) | Container mount points. This is a list of maps, where each map should contain `containerPath`, `sourceVolume` and `readOnly` | <pre>list(object({<br> containerPath = optional(string)<br> readOnly = optional(bool)<br> sourceVolume = optional(string)<br> }))</pre> | `null` | no |
| <a name="input_port_mappings"></a> [port\_mappings](#input\_port\_mappings) | The port mappings to configure for the container. This is a list of maps. Each map should contain "containerPort", "hostPort", and "protocol", where "protocol" is one of "tcp" or "udp". If using containers in a task with the awsvpc or host network mode, the hostPort can either be left blank or set to the same value as the containerPort | <pre>list(object({<br> containerPort = number<br> hostPort = optional(number)<br> protocol = optional(string)<br> }))</pre> | `null` | no |
| <a name="input_port_mappings"></a> [port\_mappings](#input\_port\_mappings) | The [port mappings](https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PortMapping.html) to configure for the container. This is a list of maps. Each map should contain `containerPort`, `hostPort`, and `protocol`, where `protocol` is one of `tcp` or `udp`. If using containers in a task with the `awsvpc` or `host` network mode, the `hostPort` can either be left blank or set to the same value as the `containerPort` | <pre>list(object({<br> name = optional(string)<br> containerPort = optional(number)<br> hostPort = optional(number)<br> protocol = optional(string) # tcp (default), udp<br> appProtocol = optional(string) # http, http2, grpc (defaults to tcp)<br> containerPortRange = optional(string)<br> }))</pre> | `null` | no |
| <a name="input_privileged"></a> [privileged](#input\_privileged) | When this variable is `true`, the container is given elevated privileges on the host container instance (similar to the root user). This parameter is not supported for Windows containers or tasks using the Fargate launch type. | `bool` | `null` | no |
| <a name="input_pseudo_terminal"></a> [pseudo\_terminal](#input\_pseudo\_terminal) | When this parameter is true, a TTY is allocated. | `bool` | `null` | no |
| <a name="input_readonly_root_filesystem"></a> [readonly\_root\_filesystem](#input\_readonly\_root\_filesystem) | Determines whether a container is given read-only access to its root filesystem. Due to how Terraform type casts booleans in json it is required to double quote this value | `bool` | `false` | no |
Expand Down
Loading

0 comments on commit 6c25559

Please sign in to comment.