Skip to content

Add ExecuteCallback support to AWS ECS Executor#63657

Open
shivaam wants to merge 1 commit intoapache:mainfrom
shivaam:feature/ecs-executor-callback
Open

Add ExecuteCallback support to AWS ECS Executor#63657
shivaam wants to merge 1 commit intoapache:mainfrom
shivaam:feature/ecs-executor-callback

Conversation

@shivaam
Copy link
Contributor

@shivaam shivaam commented Mar 15, 2026

Enable the ECS executor to handle callback workloads (e.g., deadline alerts) alongside regular task workloads. Callbacks are serialized, dispatched to ECS containers, and tracked through the same lifecycle as tasks.

  • Tested the PR with real ecs executors after including @ferruzzi 's PR, Overall, it worked.

Changes:

  • Add supports_callbacks flag and queued_callbacks dict
  • Widen key types from TaskInstanceKey to WorkloadKey
  • Branch on ExecuteTask vs ExecuteCallback in queue_workload and _process_workloads
  • Guard log_task_event calls for task-only keys
  • Use cast() instead of type:ignore for success/fail/running_state
  • Add DAG bundle setup in execute_workload.py for container-side callback execution
  • Add AIRFLOW_V_3_2_PLUS version gate to version_compat.py

Was generative AI tooling used to co-author this PR?
  • Yes (Claude code)

@boring-cyborg boring-cyborg bot added area:providers provider:amazon AWS/Amazon - related issues labels Mar 15, 2026
@shivaam shivaam force-pushed the feature/ecs-executor-callback branch from f3156ea to 4728b66 Compare March 15, 2026 14:50
@shivaam
Copy link
Contributor Author

shivaam commented Mar 15, 2026

@ferruzzi Draft PR

@shivaam shivaam force-pushed the feature/ecs-executor-callback branch 4 times, most recently from 9b2d069 to 38ddfea Compare March 15, 2026 18:44
Enable the ECS executor to handle callback workloads (e.g., deadline
alerts) alongside regular task workloads. Callbacks are serialized,
dispatched to ECS containers, and tracked through the same lifecycle
as tasks.

Changes:
- Add supports_callbacks flag and queued_callbacks dict
- Widen key types from TaskInstanceKey to WorkloadKey
- Branch on ExecuteTask vs ExecuteCallback in queue_workload and
  _process_workloads
- Guard log_task_event calls for task-only keys
- Use cast() instead of type:ignore for success/fail/running_state
- Add DAG bundle setup in execute_workload.py for container-side
  callback execution
- Add AIRFLOW_V_3_2_PLUS version gate to version_compat.py
@shivaam shivaam force-pushed the feature/ecs-executor-callback branch from 38ddfea to 6ac2634 Compare March 15, 2026 18:44
@shivaam shivaam marked this pull request as ready for review March 15, 2026 21:26
@shivaam shivaam requested a review from o-nikolas as a code owner March 15, 2026 21:26
@potiuk potiuk added the ready for maintainer review Set after triaging when all criteria pass. label Mar 16, 2026
@ferruzzi ferruzzi mentioned this pull request Mar 16, 2026
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:providers provider:amazon AWS/Amazon - related issues ready for maintainer review Set after triaging when all criteria pass.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants