Skip to content
Go to file

Latest commit

* Rough port to version 0.12

* Container health checks don't work due to the requirement of maps having the
  same type for alle values.
* Example `with_secrets` fails to deploy.

* Manually merge some 0.12 changes from a01717b started on 0.12 work, in particular simplifying
ecs_service; this merges those changes aside from the 'lb_service'

* Add the 'assign_public_ip' option

* Allow specifying repository credentials

* Fix service discovery DNS record types for 0.12

* Handle INACTIVE task definitions correctly

When a task definition exists but is in the INACTIVE state, it's
excluded by Terraform and looking it up via a data source was erroring

* Avoid spurious task definition updates by matching default values

The default values for e.g. the container command were different from
what was actually reported by the corresponding resource. In that
example, we were passing [null] vs. the reported value of [], and this
was triggering replacement of the task definition each time.

* Add .dir-locals.el to .gitignore

* Pass health check parameters separately as healthcheck_cmd, _timings

The actual JSON expected by the AWS API has the command as an array of
strings and the timing parameters as integers. Unfortunately, we can't
pass a heterogeous map as a Terraform module variable.

* Tag everything

* Gracefully handle the case where a Lambda lookup function is deleted

* reorganize IAM Secrets Manager stuff

* Simplify task definition output

* Add http_enabled variable to allow using only HTTPS

* Avoid creating a task scheduler role when not using it

* Use 0.12-style jsondecode() in live_task_lookup

* Allow exposing extra ports on a container

* Make ECS task definition create_before_destroy

Co-authored-by: Mads Hvelplund <>

Git stats


Failed to load latest commit information.
Latest commit message
Commit time

AWS ECS Service Terraform Module Build Status Slack Community


Not affiliated with the Airship project supported by the OpenStack Foundation (OSF)


  • Full guide on the Airship ECS Service module here!
  • Step-by-Step Getting started with Airship modules here!


Name Description
ecs_taskrole_arn The ARN of the Task IAM Role
ecs_taskrole_name The name of the ECS Task IAM Role
lb_target_group_arn The arn of the Target Group


Got a question?

File a GitHub issue, Slack Community in the #airship channel.

You can’t perform that action at this time.