---
name: runner-pool
status: completed
---

Proposes replacing Terragrunt's group-based execution with a dynamic runner pool that schedules Units as soon as dependencies are resolved.
This improves efficiency, reduces bottlenecks, and limits the impact of individual failures.

### `runner-pool` - What it does
Allow usage of experimental runner pool implementation for units execution.

### `runner-pool` - How to provide feedback
Provide your feedback on the [Runner Pool](https://github.com/gruntwork-io/terragrunt/issues/3629).

### `runner-pool` - Criteria for stabilization
To transition the `runner-pool` feature to a stable release, the following must be addressed:

- [x] Use new discovery and queue packages to discover units.
- [x] Add support for including/excluding external units in the discovery process.
- [x] Add runner pool implementation to execute discovered units.
- [x] Add integration tests to track that the runner pool works in the same way as the current implementation.
- [x] Add performance tests to track that the runner pool implementation is faster than the current implementation.
- [x] Add support for fail fast behavior in the runner pool.
- [x] Improve the UI to queue to apply.
- [x] Add OpenTelemetry support to the runner pool.
