AWS CLI ECS WAIT Command in Jenkinsfile

0

Hi guys, I've pipeline for creating ecs services. As you know, when you use 'aws ecs run-task' the command does not wait until running process it gives output immedeately. You could use sleep 300 command etc to wait updating ecs status to running state.

I found this command on cli aws ecs wait tasks-running --cluster ${clusterName} --tasks ${TASK_ID} But it gives

Waiter TasksRunning failed: Waiter encountered a terminal failure state

OR

Waiter TasksRunning failed: Waiter encountered a terminal failure state: For expression "tasks[].lastStatus" we matched expected path: "STOPPED" at least once

Any idea?

2 Answers
1

Hello there,

The error message is self-explanatory. It implies that one of the tasks in the task lists you are trying to wait on is in a STOPPED state.

You should run the describe command below to confirm all the task status and see the one in stopped state while that error message is still being reported for the aws ecs wait tasks-running command:

% aws ecs describe-tasks \
    --cluster ${clusterName} \
    --tasks ${TASK_IDS} \
    --query 'tasks[*].containers[*].[lastStatus,taskArn]' --output text

For more info on this command, refer to the documentation here.

AWS
Olawale
answered 2 years ago
0

STOPPED one is okay I can understand the output. But the first one has not more output just Waiter TasksRunning failed: Waiter encountered a terminal failure state

answered 2 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions