Skip to content
Latchkey

O Que É uma Composite Action no GitHub Actions?

Uma composite action empacota vários steps em uma action, permitindo reutilizar uma sequência de comandos sem copiá-los.

Às vezes você quer reutilizar alguns steps, não um workflow inteiro. Composite actions permitem envolver uma sequência de run e uses em uma única chamada uses:, definida inteiramente em YAML.

O que é

Uma composite action é uma action cujo bloco runs: tem using: composite e uma lista de steps. Ela reside em um arquivo action.yml e é referenciada como qualquer outra action.

A composite action
# action.yml
name: Setup project
runs:
  using: composite
  steps:
    - run: npm ci
      shell: bash
    - run: npm run build
      shell: bash

Como funciona

Quando um workflow usa a composite action, seus steps agrupados executam inline no runner. Cada step run precisa declarar um shell, e a action pode aceitar inputs e definir outputs.

Composite vs reusable workflow

Uma composite action reutiliza steps dentro de um único job; um reusable workflow reutiliza jobs inteiros. Recorra a uma composite action quando a lógica compartilhada for uma sequência de steps, não um pipeline completo.

Por que importa

Composite actions removem o copiar e colar de tarefas comuns de setup, como instalar ferramentas ou configurar caching, e as mantêm versionadas em um só lugar.

Conceitos relacionados

Composite actions são um dos três tipos de action e são configuradas com inputs, muito como as Marketplace actions.

Principais conclusões

  • Uma composite action agrupa steps em uma action.
  • Ela usa using: composite; cada run precisa de um shell.
  • Use-a para reutilizar steps, não jobs inteiros.

Guias relacionados