Tengo un script python boto3 que hace el ff:
- crear una lista de tareas con el estado 'EN EJECUCIÓN' para un servicio a través de
ecs_client.list_tasks(cluster=mycluster,serviceName=myservice,desiredStatus='RUNNING')
- haga un bucle for para la lista de tareas anteriores y detenga cada vía
ecs_client.stop_task(cluster=mycluster,task=mytask)
- describa el servicio para obtener el runningCount y el deseadoCount
ecs_client.describe_services(cluster=mycluster,services=[myservice])
- while loop si runningCount <deseadoCount - lo que significa que una tarea se está deteniendo actualmente y aún no se ha reemplazado, ¡así que no dejes la siguiente tarea todavía!
while myservice['services'][0]['runningCount'] < myservice['services'][0]['desiredCount']:
Si el ciclo while ya no es verdadero, lo que significa que tanto el conteo en ejecución como el deseado son iguales, detenga la siguiente tarea en la lista.
Este es el flujo real y no puedo mostrar el código real, ya que todavía estoy empleado en mi trabajo actual y todo mi código les pertenece :)