我在ECR中有一个docker镜像,我经常更新。我希望ECS进行强制部署,以便获得该服务以获取映像的最新版本。
该服务已检查到terraform中,因此我宁愿让terraform为我完成繁重的工作,而不是编写强制重新部署的脚本。
如何利用Terraform强制重新部署ECS服务?
答案 0 :(得分:1)
我发现最有效的方法是保持任务定义。
terraform taint -module=mysandbox aws_ecs_task_definition.sandbox
terraform apply
Terraform will perform the following actions:
~ module.mysandbox.aws_ecs_service.sandbox
task_definition: "some-old-arn" => "${aws_ecs_task_definition.sandbox.arn}"
-/+ module.mysandbox.aws_ecs_task_definition.sandbox (tainted) (new resource required)
...
revision: "3" => <computed>
如您所见,ecs_service中的任务定义已更新为新的任务定义,该版本的修订版本号已增加。