Examples

Build Matrix

If any step in the aggregate fails, the build will fail, making it useful for build matrices:

plan:
- get: some-repo
- aggregate:
  - task: unit-windows
    file: some-repo/ci/windows.yml
  - task: unit-linux
    file: some-repo/ci/linux.yml
  - task: unit-darwin
    file: some-repo/ci/darwin.yml

Parallel Fetching

The aggregate step is also useful for performing arbitrary steps in parallel, for the sake of speeding up the build. It is often used to fetch all dependent resources together:

plan:
- aggregate:
  - get: component-a
  - get: component-b
  - get: integration-suite
- task: integration
  file: integration-suite/task.yml

1.7.1.4 aggregate step

aggregate is deprecated and will be removed in a future version. Please use the in_parallel step instead.

aggregate: [step]

Performs the given steps in parallel.

If any sub-steps in an aggregate result in an error, the aggregate step as a whole is considered to have errored.

Similarly, when aggregating task steps, if any fail, the aggregate step will fail.