GitHub Actions supports running workflow steps in parallel
GitHub Actions now supports running workflow steps concurrently using the `background` keyword, allowing steps to execute in parallel while maintaining distinct logs. This enhancement enables more efficient job execution by handling patterns like parallel builds or starting background services without interleaved logs. Previously, developers relied on shell backgrounding which complicated log management. This feature is available now with new keywords `background`, `wait`, `wait-all`, and `cancel`.
- →Enable parallel execution of workflow steps
- →Introduce new keywords for managing background steps
- →Add `parallel` keyword as syntactic sugar for concurrent steps
- →New capability supports common CI/CD patterns
Features (1) ›
- Enable parallel execution of workflow steps
GitHub Actions now supports running workflow steps concurrently using the `background` keyword. This allows multiple steps to run in parallel while preserving separate logs and execution contexts, improving efficiency for common job patterns.
Enhancements (2) ›
- Introduce new keywords for managing background steps
Four new keywords (`background`, `wait`, `wait-all`, `cancel`) are introduced to manage asynchronous and parallel step execution. `background: true` runs a step asynchronously, while `wait` and `wait-all` pause execution until specified background steps complete. `cancel` allows graceful termination of background steps.
- Add `parallel` keyword as syntactic sugar for concurrent steps
The new `parallel` keyword simplifies running multiple steps concurrently. It acts as syntactic sugar, converting a group of steps into background steps followed by a `wait`, enabling a straightforward pattern for executing multiple steps in parallel before proceeding.
Notes (1) ›
- New capability supports common CI/CD patterns
This update addresses common patterns such as running independent work in true parallel, starting and cleanly stopping background services, and initiating non-blocking work that continues while subsequent tasks progress.
https://github.blog/changelog/2026-06-25-actions-steps-can-now-be-run-in-parallel