{"id":21191,"library":"ecs-deploy","title":"ecs-deploy","description":"A powerful CLI tool to simplify Amazon ECS deployments, rollbacks, and scaling. Version 1.15.2, actively maintained with recent releases adding multi-account support, Slack notifications, and Docker label configuration.","status":"active","version":"1.15.2","language":"python","source_language":"en","source_url":"https://github.com/fabfuel/ecs-deploy","tags":["amazon-ecs","deployment","cli","aws"],"install":[{"cmd":"pip install ecs-deploy","lang":"bash","label":"PyPI"}],"dependencies":[],"imports":[{"note":"ecs-deploy with hyphen is not a valid Python identifier; use underscore.","wrong":"import ecs-deploy","symbol":"ecs_deploy","correct":"from ecs_deploy import ecs_deploy"}],"quickstart":{"code":"# Quickstart: deploy a service to ECS\n# Ensure AWS credentials are configured (e.g., via environment variables)\nimport os\nos.environ['AWS_ACCESS_KEY_ID'] = os.environ.get('AWS_ACCESS_KEY_ID', '')\nos.environ['AWS_SECRET_ACCESS_KEY'] = os.environ.get('AWS_SECRET_ACCESS_KEY', '')\nfrom ecs_deploy import ecs_deploy\nresult = ecs_deploy.deploy('my-cluster', 'my-service', image='nginx:latest')\nprint(result)","lang":"python","description":"Basic deployment using the library's Python API. Requires AWS credentials."},"warnings":[{"fix":"Use `ecs` command instead of `ecs-deploy`.","message":"The CLI tool is invoked as `ecs` not `ecs-deploy`. For example: `ecs deploy my-cluster my-service`.","severity":"gotcha","affected_versions":"all"},{"fix":"Ensure you specify `--account` and `--assume-role` together when assuming roles across accounts.","message":"In version 1.14.0, the `--account` and `--assume-role` options were introduced for multi-account deployments. If using role assumption, you must provide both.","severity":"breaking","affected_versions":">=1.14.0"},{"fix":"Use `--slack-url` instead of setting `SLACK_URL` environment variable.","message":"The `SLACK_URL` environment variable is deprecated in favor of the `--slack-url` CLI option.","severity":"deprecated","affected_versions":">=1.10.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run `pip install ecs-deploy` in the correct virtual environment and verify with `pip list | grep ecs-deploy`.","cause":"Trying to import the module after installation; possibly pip install failed or wrong Python environment.","error":"ModuleNotFoundError: No module named 'ecs_deploy'"},{"fix":"Set environment variables `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY` and optionally `AWS_SESSION_TOKEN`, or configure `~/.aws/credentials`.","cause":"AWS credentials not configured for the tool to access ECS.","error":"botocore.exceptions.NoCredentialsError: Unable to locate credentials"},{"fix":"Specify either `--image <image>` or `--task-definition <family:revision>`.","cause":"Missing required `--image` or `--task-definition` argument when running `ecs deploy`.","error":"ERROR: You must specify a task definition or an image"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}