Prefect 2 ECS Tasks failing suddenly? Pin your aws-prefect version in the ECS Worker

Just woke up to find all our ECS Worker tasks failing as the task_definition_arn we have set as override in the deployments aren’t being respected anymore. Turns out the default command we have used from the prefect-aws guide pip install prefect-aws && prefect worker start has started to install prefect-aws==0.5.0 which is now installing Prefect 3 and that’s not respecting task_definition_arn value and generates its own task definition.

I am not sure where exactly the issue is. To start with there is the incompatibility in Prefect 2 in the server and Prefect 3 in the ECS Worker and ignoring the task_arn seems to be an undocumented regression.

The solution

The solution is to change the worker command in its task definition to: pip install prefect-aws==0.4.19 && prefect worker start