참고: GitHub 호스트 실행기는 현재 GitHub Enterprise Server에서 지원되지 않습니다. GitHub public roadmap에 예정된 향후 지원에 대해 자세히 알아볼 수 있습니다.
개요
참고: 건너뛴 작업은 해당 상태를 “성공”으로 보고합니다. 필요한 검사인 경우에도 끌어오기 요청이 병합되는 것을 방지하지 않습니다.
jobs.<job_id>.if
조건부를 사용하여 조건이 충족되지 않는 한, 작업이 실행되지 않도록 할 수 있습니다. 지원되는 컨텍스트 및 식을 사용하여 조건을 만들 수 있습니다. 이 키에서 지원되는 컨텍스트에 대한 자세한 내용은 "워크플로 실행에 대한 컨텍스트 정보에 액세스"을 참조하세요.
참고: jobs.<job_id>.if
이 적용되기 전 jobs.<job_id>.strategy.matrix
상태로 평가합니다.
if
조건에서 식을 사용하는 경우, 선택에 따라 식 구문(${{ }}
)을 생략해도 됩니다. GitHub Actions에서 자동으로 if
조건을 식으로 평가하기 때문입니다. 그러나, 이 예외는 어디에나 적용되지는 않습니다.
${{ }}
식 구문을 사용하거나 !
이 YAML 형식으로 예약된 표기법이므로 !
식이 시작될 때 항상 ''
, ""
, ()
이스케이프를 사용해야 합니다. 예시:
if: ${{ ! startsWith(github.ref, 'refs/tags/') }}
자세한 내용은 “워크플로 및 작업에서 식 평가”을 참조하세요.
예: 특정 리포지토리에 대해서만 작업 실행
이 예제에서는 if
를 사용하여 production-deploy
작업을 실행할 수 있는 시기를 제어합니다. 리포지토리 이름이 octo-repo-prod
이고 octo-org
조직 내에 있는 경우에만 작업이 실행됩니다. 그렇지 않으면 작업이 ‘건너뛴 것’으로 표시됩니다.__
name: example-workflow on: [push] jobs: production-deploy: if: github.repository == 'octo-org/octo-repo-prod' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: '14' - run: npm install -g bats
name: example-workflow
on: [push]
jobs:
production-deploy:
if: github.repository == 'octo-org/octo-repo-prod'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '14'
- run: npm install -g bats
건너뛴 작업에서 "이 검사 건너뛰었다"가 표시됩니다.
Note
워크플로의 일부 부분에서는 환경 변수를 사용할 수 없습니다. 조건문의 컨텍스트를 사용하여 환경 변수의 값에 액세스할 수 있습니다. 자세한 내용은 "변수에 정보 저장" 항목을 참조하세요.