如何在aws ecs update-service CLI命令中添加等待功能
解答
首先明确结论:aws ecs update-service 命令原生不内置--wait参数,直接在该命令后追加--wait会报无效参数错误,无法单靠给update-service加参数实现更新后自动等待服务稳定的效果。
你不需要把两个命令拆成完全割裂的步骤执行,直接用&&把更新命令和等待命令串联即可,更新请求提交成功后会自动进入等待服务稳定的逻辑,使用体验和单命令带等待参数没有区别:
aws ecs update-service --cluster "$CI_AWS_ECS_CLUSTER" --service "$CI_AWS_ECS_SERVICE" \ --task-definition "family:revision" && \ aws ecs wait services-stable --cluster "$CI_AWS_ECS_CLUSTER" --service "$CI_AWS_ECS_SERVICE"
使用时的注意事项:
- 默认配置下,
services-stable等待逻辑每15秒轮询一次服务状态,最多轮询40次,即最长等待时长为10分钟;超过时长服务仍未达到稳定状态时,命令会返回非0退出码,可直接被CI流程捕获作为失败判定 - 如果你的服务启动耗时较长,可以通过AWS CLI的全局自定义配置调整轮询间隔、最大重试次数,适配实际业务场景
内容的提问来源于stack exchange,提问作者gcpdev
相关产品推荐
相关产品推荐

