Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
Description
AWS has announced ECS deployment circuit breakers that can automatically roll back a failed deployment: https://aws.amazon.com/blogs/containers/announcing-amazon-ecs-deployment-circuit-breaker/
New or Affected Resource(s)
Potential Terraform Configuration
resource "aws_ecs_service" "bar" {
name = "bar"
cluster = aws_ecs_cluster.foo.id
task_definition = aws_ecs_task_definition.bar.arn
scheduling_strategy = "DAEMON"
deployment_configuration = {
maximum_percent = 200
minimum_healthy_percent = 100
deployment_circuit_breaker = {
enabled = true
rollback = true
}
}
}
I'm not a massive fan of that API layout and would love it to be as simple as enable_deployment_circuit_breaker = true as a top level thing but I think the general pattern here is to have Terraform follow the AWS API and then people can abstract that behind modules if that works for them. That way if the API changes it doesn't cause breaking changes in the provider to support the new functionality.
References
Community Note
Description
AWS has announced ECS deployment circuit breakers that can automatically roll back a failed deployment: https://aws.amazon.com/blogs/containers/announcing-amazon-ecs-deployment-circuit-breaker/
New or Affected Resource(s)
Potential Terraform Configuration
I'm not a massive fan of that API layout and would love it to be as simple as
enable_deployment_circuit_breaker = trueas a top level thing but I think the general pattern here is to have Terraform follow the AWS API and then people can abstract that behind modules if that works for them. That way if the API changes it doesn't cause breaking changes in the provider to support the new functionality.References