Skip to content
Latchkey

O Que É uma Expressão no GitHub Actions?

Uma expressão é o código dentro de ${{ }} que o GitHub avalia para calcular valores, montar strings e decidir condições.

O YAML do GitHub Actions é majoritariamente estático, mas as expressões adicionam lógica. Tudo entre ${{ e }} é avaliado pelo GitHub usando contextos, operadores e funções nativas antes do step rodar.

O que é

Uma expressão é uma pequena fórmula envolvida em ${{ }}. Ela pode ler dados de contexto, chamar funções como contains() ou format(), e usar operadores como ==, && e ||.

Expressions in use
steps:
  - if: ${{ github.ref == 'refs/heads/main' }}
    run: ./deploy.sh
  - run: echo "${{ format('Build {0}', github.run_number) }}"

Como funciona

O GitHub avalia as expressões ao processar o workflow, substituindo o resultado no YAML. Em condições if:, o ${{ }} ao redor é opcional porque o valor inteiro é tratado como uma expressão.

Funções e operadores

As expressões suportam operadores de comparação e lógicos além de funções como contains, startsWith, fromJSON, e as verificações de status success() e failure(). Elas viabilizam steps condicionais e valores dinâmicos.

Por que importa

As expressões deixam os workflows dinâmicos: pular steps na branch errada, montar strings de versão ou ramificar com base em resultados anteriores. Elas são a cola entre o YAML estático e os dados de runtime.

Conceitos relacionados

As expressões leem de contextos e são comumente usadas em condições if:, matrizes (matrix) e chaves de concurrency.

Principais conclusões

  • Uma expressão é lógica dentro de ${{ }}.
  • Ela usa contextos, operadores e funções.
  • Em if: o wrapper ${{ }} é opcional.

Guias relacionados