참고: GitHub 호스트 실행기는 현재 GitHub Enterprise Server에서 지원되지 않습니다. GitHub public roadmap에 예정된 향후 지원에 대해 자세히 알아볼 수 있습니다.
개요
워크플로 실행은 기본적으로 병렬로 실행되는 하나 이상의 jobs
로 구성됩니다. 작업을 순차적으로 실행하려면 jobs.<job_id>.needs
키워드를 사용하여 다른 작업에 대한 종속성을 정의할 수 있습니다.
각 작업은 runs-on
으로 지정된 실행기 환경에서 실행됩니다.
워크플로 사용량 한도 내에 있는 한 개수에 제한 없이 작업을 실행할 수 있습니다. 자세한 내용은GitHub에서 호스트되는 실행기 사용량 한도의 경우 "사용 제한, 청구, 관리", 자체 호스팅되는 실행기 사용량 한도의 경우 "자체 호스트형 실행기 정보"을(를) 각각 참조하세요.
워크플로 실행에서 실행 중인 작업의 고유 식별자를 찾아야 하는 경우 GitHub Enterprise Server API를 사용할 수 있습니다. 자세한 내용은 "GitHub Actions에 대한 REST API 엔드포인트"을(를) 참조하세요.
작업에 대한 ID 설정
jobs.<job_id>
를 사용하여 작업에 고유 식별자를 지정합니다. job_id
키는 문자열이고 해당 값은 작업 구성 데이터 맵입니다. <job_id>
를 jobs
개체에 고유한 문자열로 바꿔야 합니다. <job_id>
는 문자 또는 _
로 시작해야 하며 영숫자, -
또는 _
만 포함해야 합니다.
예: 작업 만들기
이 예제에서는 두 개의 작업이 생성되었으며 해당 job_id
값은 my_first_job
과 my_second_job
입니다.
jobs:
my_first_job:
name: My first job
my_second_job:
name: My second job
작업에 대한 이름 설정
jobs.<job_id>.name
을 사용하여 GitHub UI에 표시되는 작업 이름을 설정합니다.
필수 구성 요소 작업 정의
이 작업이 실행되기 전에 완료해야 하는 작업을 식별하는 데 jobs.<job_id>.needs
를 사용합니다. 문자열 또는 문자열 배열일 수 있습니다. 작업을 실패하거나 건너뛰게 되면 작업이 계속되도록 하는 조건식을 사용하지 않는 한 작업이 필요한 모든 작업을 건너뜁니다. 실행에 서로 필요한 일련의 작업이 포함된 경우 오류 또는 건너뛴 지점부터 종속성 체인의 모든 작업에 오류 및 건너뛰기가 적용됩니다. 종속된 작업이 성공하지 못한 경우에도 작업을 실행하려면 jobs.<job_id>.if
에 always()
조건식을 사용합니다.
예: 성공적인 종속 작업 요구
jobs:
job1:
job2:
needs: job1
job3:
needs: [job1, job2]
이 예제에서 job1
은 job2
가 시작되기 전에 성공적으로 완료해야 하며 job3
은 job1
및 job2
모두 완료되기를 기다립니다.
이 예제의 작업은 순차적으로 실행됩니다.
job1
job2
job3
예: 성공적인 종속 작업이 필요하지 않음
jobs:
job1:
job2:
needs: job1
job3:
if: ${{ always() }}
needs: [job1, job2]
이 예제에서 job3
은 always()
조건식을 사용하여 성공 여부에 관계없이 job1
및 job2
가 완료된 후에 항상 실행되도록 합니다. 자세한 내용은 "식"을 참조하세요.