Skip to content

Commit 7ca28b5

Browse files
committed
docs: note about determining strategy when syncing
Signed-off-by: Hoang Ngo <adlehoang118@gmail.com>
1 parent 688ec01 commit 7ca28b5

1 file changed

Lines changed: 26 additions & 0 deletions

File tree

  • docs/content/en/docs-v1.0.x/plugins

docs/content/en/docs-v1.0.x/plugins/ecs.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,32 @@ Without this, the plugin cannot create or manage task sets for your service.
174174
> **Note:** Support for the ECS deployment controller (`type: ECS`) is planned for a future version.
175175

176176

177+
## Choosing a deployment strategy
178+
179+
When a `pipeline` is configured, the ECS plugin compares the container images in the target task definition against those in the currently running deployment to decide whether to execute the pipeline or skip it with a quick sync:
180+
181+
| Condition | Strategy |
182+
|---|---|
183+
| No running deployment source available | Pipeline sync |
184+
| Running task definition cannot be loaded | Pipeline sync (fallback) |
185+
| One or more container images added, removed, or changed | Pipeline sync |
186+
| No container image changes | Quick sync |
187+
188+
The comparison checks each container by name. If the image name differs, the full change is reported; if only the tag or digest differs, the version change is reported. All detected changes appear in the deployment summary in the UI.
189+
190+
> Non-image changes (environment variables, CPU/memory, etc.) do not affect strategy selection. If you update only those fields, the plugin will choose quick sync even when a pipeline is configured.
191+
192+
**Use quick sync when:**
193+
- You want a simple, immediate rollout with no traffic splitting.
194+
- The environment is non-critical (e.g. dev, staging) where gradual rollout adds no value.
195+
196+
> Standalone tasks always use quick sync. Pipeline sync is not supported for standalone tasks.
197+
198+
**Use pipeline sync when:**
199+
- You want to gradually shift traffic using canary or blue-green strategies.
200+
- You need manual approval gates before full rollout.
201+
- You want automated analysis (metrics, logs) to validate the new version before promoting it.
202+
177203
## Quick sync
178204

179205
By default, when no `pipeline` is specified in the application configuration, PipeCD triggers a **quick sync** for any merged pull request. Quick sync registers the new task definition, creates/updates the ECS service, promotes a new primary task set, waits for stability, and removes old task sets. All traffic is switched to the new version immediately.

0 commit comments

Comments
 (0)