Skip to content

feat: Support subtasks and mixins#105

Merged
x1unix merged 11 commits into
v2from
feat/mixins
May 26, 2026
Merged

feat: Support subtasks and mixins#105
x1unix merged 11 commits into
v2from
feat/mixins

Conversation

@x1unix

@x1unix x1unix commented May 26, 2026

Copy link
Copy Markdown
Member

This PR adds support of calling sub-tasks and mixins, which are reusable pieces of pipeline.

Examples

Mixins

Mixins allow decoupling repeated pieces of pipeline into separate blocks.

Mixins, like tasks, support accepting inputs.

mixins:
  hello:
    inputs:
      name:
        type: string
      greeting:
        type: string
        default: Hello
    steps:
      - action: debug/echo
        with:
          message: "${{inputs.greeting}}, ${{inputs.name}}!"
      - action: debug/echo
        delay: 300ms
        with:
          message: "Goodbye, ${{inputs.name}}"

tasks:
  test:
    steps:
      - mixin: hello
        with:
          name: Alice 

Subtasks

Tasks can be called inside another tasks, similar to mixins:

tasks:
  foo:
    steps:
      ...
  bar:
    steps:
      - task: foo # foo calls bar

@x1unix x1unix merged commit 8c6c8f2 into v2 May 26, 2026
1 of 3 checks passed
@x1unix x1unix deleted the feat/mixins branch May 26, 2026 04:03
@x1unix x1unix mentioned this pull request May 26, 2026
40 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant