[fix] aws-ecs support not applying tags to services #140
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
AWS added support for tagging ECS services in a way that is not backwards compatible with ECS services that have been deployed for a long time. Tags can only be added to ECS services that use a new ARN format that embeds a cluster name inside of the ARN, but older ECS service do not have the name embedded.
For some teams, there are many services that are already deployed, and replacing the ECS service just to apply tags will result in user-visible downtime. We provide a flag for users migrating from the CZI internal module to this public cztack module to be able to prevent Terraform from trying to apply tags, in those cases where the user has determined that applying tags is incompatible with the existing resource. It is recommended that at the next possible down time, that the service be replaced by running terraform taint, then restoring the ECS task definition version (since the taint/replace will restore to only the last stub definition). After the service is destroyed/replaced, the tag_service=false flag can be removed.