ecs-deploy¶
ECS deploy
Roll new images out to ECS services. The services pin a mutable branch tag, so a deploy is just update-service --force-new-deployment after the tag has been re-pushed (ecr-build-push) – no task-definition change involved. Waits for the services to reach steady state, logging rollout progress every 15s; fails fast if the deployment circuit breaker reports FAILED, and prints recent service events on any failure. Assumes the deploy role (DEPLOY_ROLE_ARN) via OIDC – the calling job needs permissions: id-token: write.
Inputs¶
Input |
Required |
Default |
Description |
|---|---|---|---|
|
yes |
— |
DEPLOY_ROLE_ARN – the deploy IAM role to assume via OIDC. |
|
yes |
— |
Region of the cluster. |
|
yes |
— |
ECS cluster name (e.g. codegen-example-app-prod-primary). |
|
yes |
— |
Service name(s) to redeploy, space-separated (e.g. “app-prod-primary-api app-prod-primary-worker”). |
|
no |
|
Wait for the services to reach steady state (“true”/”false”). |
|
no |
|
Give up (and fail) if the services aren’t stable after this long. |
Usage¶
- uses: actions/checkout@v6
- uses: FSHTech/github-actions/ecs-deploy@v1
with:
role-arn: ...
region: ...
cluster: ...
services: ...