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.
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".