Resumen
Note: A job that is skipped will report its status as "Success". It will not prevent a pull request from merging, even if it is a required check.
Puedes utilizar el condicional jobs.<job_id>.if
para prevenir que un job se ejecute a menos de que una condición se cumpla. Puedes usar cualquier contexto y expresión admitidos para crear un condicional.
Podrías omitir la sintaxis de expresión cuando utilizas expresiones en un condicional if
(${{ }}
) ya que GitHub evalúa automáticamente el condicional if
como una expresión. Para obtener más información, consulta la sección "Expresiones".
Ejemplo: Solo ejecutar un job para un repositorio específico
Este ejemplo utiliza if
para controla cuándo se puede ejecutar el job production-deploy
. Este solo se ejecutará si el repositorio se llama octo-repo-prod
y está dentro de la organización octo-org
. De otra forma, el job se marcará como skipped.
name: example-workflow
on: [push]
jobs:
production-deploy:
if: github.repository == 'octo-org/octo-repo-prod'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '14'
- run: npm install -g bats
You would see the following status on a skipped job: