Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.
Atualmente o GitHub AE está em versão limitada.

Usando condições para controlar a execução do trabalho

Impeça que um trabalho seja executado a menos que suas condições sejam atendidas.

Visão geral

Observação: um trabalho ignorado relatará seu status como "Êxito". Ele não impedirá a mesclagem de uma solicitação de pull, mesmo que seja uma verificação necessária.

Use o condicional jobs.<job_id>.if para impedir que um trabalho seja executado, a não ser que uma condição seja atendida. Você pode usar qualquer contexto e expressão compatível para criar uma condicional. Para obter mais informações sobre quais contextos têm suporte nessa chave, confira "Disponibilidade de contexto".

Ao usar expressões em um condicional if, você pode omitir a sintaxe de expressão (${{ }}), porque o GitHub avalia automaticamente o condicional if como uma expressão. Para obter mais informações, confira "Expressões".

Exemplo: Somente executar o trabalho para um repositório específico

Este exemplo usa if para controlar quando o trabalho production-deploy pode ser executado. Ele só será executado se o repositório for chamado octo-repo-prod e estiver na organização octo-org. Caso contrário, o trabalho será marcado como ignorado.

YAML
name: example-workflow
on: [push]
jobs:
  production-deploy:
    if: github.repository == 'octo-org/octo-repo-prod'
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: '14'
      - run: npm install -g bats

Em um trabalho ignorado, você deve ver "Esta marcação foi ignorada".

Nota: em algumas partes do fluxo de trabalho, você não pode usar variáveis de ambiente. Em vez disso, você pode usar contextos para acessar o valor de uma variável de ambiente. Para obter mais informações, confira "Variáveis".