terraform-aws-ecs-container-definition

Terraform module to generate well-formed JSON documents (container definitions) that are passed to the aws_ecs_task_definition Terraform resource

APACHE-2.0 License

Stars
339
Committers
52

Bot releases are visible (Hide)

terraform-aws-ecs-container-definition - v0.61.1 Latest Release

Published by github-actions[bot] 12 months ago

🚀 Enhancements

what

The portMapping parameter had a duplicate name field occurrence

why

Failure in creating services in the new release v0.61.0

references

I was waiting for the previous PR to get merged since I use this module in my project for a while. Saw CI checks didn't pass so I made a new fix PR.

  • closes #170
terraform-aws-ecs-container-definition - v0.61.0

Published by github-actions[bot] about 1 year ago

what

  • added name and appProtocol to portMapping variables

why

  • Service Connect uses these fields

references

terraform-aws-ecs-container-definition - v0.60.1

Published by github-actions[bot] about 1 year ago

what

  • Add optional variable name to portMappings to allow Service Discovery registration

why

  • Unable to allow ECS container definitions to register with Service Discovery

references

  • closes #162

🤖 Automatic Updates

what

This is an auto-generated PR that updates the README.md and docs

why

To have most recent changes of README.md and doc from origin templates

terraform-aws-ecs-container-definition - v0.60.0

Published by github-actions[bot] over 1 year ago

what

  • enable & use optional attributes where AWS API marks fields optional
  • remove redundant lookups
  • strengthen types for log_configuration, repository_credentials, system_controls, container_definition
  • reorder object var attributes to match AWS docs
  • simplify log configuration sanitization/munging
  • simplify secret & environment var sorting
  • expose unencoded container definition output directly without requiring pointless jsonencode/jsondecode cycle

why

  • optional obviates lookup(..., null) calls for objects
  • lookup(o, k) without a default is deprecated in favor of o[k] or direct attr access (o.k)
  • log_configuration, repository_credentials, and system_controls had needlessly opaque any types which hinder DX and make subtle bugs more likely (e.g. in the types of log_configuration.options values)
  • since all attributes of container_definition are now typed there's no reason not to type it as well
  • following the AWS documentation's field order makes types easier to verify for completeness & correctness
  • typing log_configuration appropriately obviates explicit tostring & null handling; resolves #151
  • env/secret map sorting can be dramatically simplified since for-expressions iterate over maps & objects by key in lexicographic order
  • jsonencode-ing the final container definition only to jsondecode for json_map_object is redundant

Refs

  • #154
  • @obataku

Sync github from the template

terraform-aws-ecs-container-definition - v0.59.0

Published by cloudpossebot over 1 year ago

  • No changes
terraform-aws-ecs-container-definition - v0.58.3

Published by cloudpossebot over 1 year ago

🚀 Enhancements

what

  • Maybe the AWS container definition API changed but applying a container constructed from this module will post with environment = null which amazon translates to environment = []
  • So every subsequent apply will have changes in terraform like environment = [] ~> null

why

  • if we match what amazon translates to, then the terraform state stays consistent
terraform-aws-ecs-container-definition - v0.58.2

Published by cloudpossebot over 1 year ago

what

  • Remove unused provider

why

references

what and why

Change all references to git.io/build-harness into cloudposse.tools/build-harness, since git.io redirects will stop working on April 29th, 2022.

References

  • DEV-143

🤖 Automatic Updates

what

This is an auto-generated PR that updates the README.md and docs

why

To have most recent changes of README.md and doc from origin templates

terraform-aws-ecs-container-definition - v0.58.1

Published by cloudpossebot about 3 years ago

🚀 Enhancements

what

  • Add quick usage using correct source

why

  • It's difficult to figure out how to source the module correctly without having to look back at the terraform registry. You could look at the examples too but those source arguments use relative paths instead of the registry source.

references

  • N/A
terraform-aws-ecs-container-definition - v0.58.0

Published by cloudpossebot about 3 years ago

what

  • Add backwards compatibility with TF15 related to mount_points variable

why

  • Incompatibility with TF15, root cause is unknown

references

  • closes #136

comments/notes

  • This will force users to specify the readOnly bool, previously where null was specified should now be false per AWS default
  • Initially wanted to use default optional function within the variable, but this feature is only available in TF15
terraform-aws-ecs-container-definition - v0.57.0

Published by cloudpossebot over 3 years ago

what

  • Ensure examples/complete is creating an aws_ecs_task_definition and test the task definition in the automated testing.
  • Fix examples/multiple_definitions
  • Bump minimum Terraform required version to 0.13.0
  • Add context.tf to examples/complete to ensure aws_ecs_task_definition has tags.

why

  • We should be ensuring that the entire container definition output of this module is accepted by aws_ecs_task_definition and produces an identical result to the resource container_definitions output.
  • Bumping to 0.13.0 as the minimum supported version ensures this module is easier to maintain down the road.

references

  • N/A
terraform-aws-ecs-container-definition - v0.56.0

Published by cloudpossebot over 3 years ago

what

  • Cleaner multiple definition example using json_map

why

  • Best practices and readability

references

N/A

terraform-aws-ecs-container-definition - v0.55.0

Published by cloudpossebot over 3 years ago

terraform-aws-ecs-container-definition - v0.54.0

Published by cloudpossebot over 3 years ago

what

  • Adds a null check for secrets and environment

why

references

N/A

terraform-aws-ecs-container-definition - v0.53.0

Published by cloudpossebot over 3 years ago

what

  • Add additional outputs which are marked sensitive which can be used when passing on secrets (secrets) or secret maps (map_secrets).

why

  • When using secrets (or map_secrets) and without sensitive outputs TF 0.14 will fail with Error: Output refers to sensitive values

references

terraform-aws-ecs-container-definition - v0.52.0

Published by cloudpossebot over 3 years ago

what

why

  • This fixes a bug in which the secrets key will break the module due to the incorrect key

references

terraform-aws-ecs-container-definition - v0.51.0

Published by cloudpossebot over 3 years ago

Merge copy of https://github.com/cloudposse/terraform-aws-ecs-container-definition/pull/120

Commit history is the same

The original PR was failing on null secrets so I set var.secrets to [] which is the same default as var.environment.

terraform-aws-ecs-container-definition - v0.50.0

Published by cloudpossebot over 3 years ago

what

Revert sensitive = true outputs

why

Cannot see the difference in task definitions in terraform plan due to sensitive = true

references

Revert https://github.com/cloudposse/terraform-aws-ecs-container-definition/pull/118

terraform-aws-ecs-container-definition - v0.49.2

Published by cloudpossebot over 3 years ago

🐛 Bug Fixes

what

A key in the container definition had a typo. preudoTerminal instead of pseudoTerminal

why

Because of this typo it was impossible to enable the pseudoTerminal (tty)

references

n/a

terraform-aws-ecs-container-definition - v0.49.1

Published by cloudpossebot over 3 years ago

🚀 Enhancements

what

  • Marks the outputs as sensitive
  • Update workflows etc. missed by #119

why

  • Otherwise TF 0.14 would give an Error: Output refers to sensitive values when using these outputs to feed into other modules (e.g. terraform-aws-ecs-alb-service-task)
  • Keep modules in sync per request of Cloud Posse

references

terraform-aws-ecs-container-definition - v0.49.0

Published by cloudpossebot over 3 years ago

what

  • update context.tf to v0.24.1
  • minimum required Terraform version bumped to 0.13.0
  • readme updated, Bridgecrew compliance badges added

why

  • It allows for setting the letter case of tag names and labels, back compatibility with context v0.22.0 and below
  • we have dropped support for Terraform 0.12
  • To be able see and fix the recommendations from Bridgecrew so we can position our modules as standards compliant