调用 UpdateService 操作时 AWS ECS InvalidParameterExcpetion

Rah*_*rma 8 deployment amazon-web-services amazon-ecs jenkins docker

我一直在尝试使用 jenkins 为我的 ECS 集群设置 CI/CD。我按照这个博客做了同样的事情。但我收到这个错误:

调用 UpdateService 操作时发生错误 (InvalidParameterException):修订号无效。数量:49

用于更新服务的命令是:

aws ecs update-service --cluster ${CLUSTER_NAME} --service ${SERVICE_NAME} --task-definition ${TASK_FAMILY}:${TASK_REVISION} --desired-count ${DESIRED_COUNT}
Run Code Online (Sandbox Code Playgroud)

令人惊讶的是,如果我从 cli 运行命令并输入所有值,它会成功运行。我不确定该命令有什么问题。

编辑1:该修订存在于 AWS 的任务定义中。我可以从 AWS 控制台看到该特定修订。正如我已经提到的,该命令使用该特定修订版从 cli 成功运行。

编辑2:我可以使用列出任务定义aws ecs list-task-definitions,并且在列表中看到该特定任务定义,但我无法使用 ${TASK_FAMILY}:${TASK_REVISION} 描述该任务定义。它给了我同样的错误。

Rah*_*rma 4

好吧,我发现在抛出同样的内容aws ecs describe-task-definition ${TASK_FAMILY}时这是有效的。aws ecs describe-task-definition ${TASK_FAMILY}:${TASK_REVISION}Invalid revision number error

所以我尝试了 update-service 命令而不使用 ${TASK_REVISION} 变量,如下所示:

aws ecs update-service --cluster ${CLUSTER_NAME} --service ${SERVICE_NAME} --task-definition ${TASK_FAMILY} --desired-count ${DESIRED_COUNT}
Run Code Online (Sandbox Code Playgroud)

它起作用了。它还使用任务定义的最新版本。