docs/adrs/1144-composite-actions.md
Date: 2021-06-10
Status: Accepted
We released composite run steps last year which started our journey of reusing steps across different workflow files. To continue that journey, we want to expand composite run steps into composite actions.
We want to support the uses steps from workflows in composite actions, including:
context objects. The secrets context will not be available to composite actions, users will need to pass these values in as an input.10 composite actions deepSet up job step).We do not plan on adding the ability to configure a customizable pre or post step for composite actions at this time. However, we will execute the pre and post steps of any actions referenced in a composite action.
Composite actions will generate a single pre-step and post-step for the entire composite action, even if there are multiple pre-steps and post-steps in the referenced actions.
- uses: action1
- uses: composite1
- uses: action2
The order of execution would be:
- prestep-action1
- prestep-composite1
- prestep-composite1-first-action-referenced
- prestep-composite1-second-action-referenced
- prestep-action2
- the job steps
- poststep-action2
- poststep-composite1
- poststep-composite1-the-second-action-referenced
- poststep-composite1-first-action-referenced
- poststep-action1
set-state command will not be shared.set-state command is used during a composite step, only the action that originally called set-state will have access to the env variable during the post run step.
if, continue-on-error, timeout-minutes could be supported in composite run/uses steps. These values were not originally supported in our composite run steps implementation.
shell is currently required in composite run steps