더 큰 러너에서 작업 실행하기

더 큰 러너에서 작업 실행하기

사용 가능한 더 큰 러너를 확인하고, 러너 그룹과 워크플로 레이블을 사용해 작업을 올바른 러너로 라우팅하는 방법을 알아봐요. 더 큰 러너는 조직이나 엔터프라이즈에 추가되며 러너 그룹과 레이블을 통해 작업을 대상으로 지정할 수 있어요.

출처: 문서

본문

저장소에 사용 가능한 러너 확인하기

저장소에 repo: write 접근 권한이 있다면 저장소에 사용 가능한 러너 목록을 볼 수 있어요.

  1. GitHub에서 저장소의 메인 페이지로 이동해요.

  2. 저장소 이름 아래에서 Actions 탭을 클릭해요.

    "github/docs" 저장소의 탭 스크린샷. "Actions" 탭이 주황색 윤곽선으로 강조되어 있어요.

  3. 왼쪽 사이드바의 "Management" 섹션 아래에서 Runners을 클릭해요.

  4. 저장소에 사용 가능한 러너 목록을 검토해요.

  5. 선택적으로, 워크플로에서 사용할 러너의 레이블을 복사하려면 러너 오른쪽의 케밥(세로 점 3개) 아이콘을 클릭한 다음 Copy label을 클릭해요.

Note

엔터프라이즈 및 조직 소유자는 이 페이지에서 러너를 만들 수 있어요. 새 러너를 만들려면 러너 목록 오른쪽 상단의 New runner을 클릭해 저장소에 러너를 추가할 수 있어요.

자세한 내용은 더 큰 러너 관리하기자체 호스팅 러너 추가하기를 참고하세요.

워크플로에서 더 큰 러너 대상으로 지정하기

사용하려는 더 큰 러너를 확인한 후 러너 그룹, 워크플로 레이블, 또는 둘 다를 사용해 워크플로에서 대상으로 지정할 수 있어요. 러너 그룹은 일련의 러너로 작업을 라우팅하는 데, 워크플로 레이블은 특정 레이블을 가진 러너를 대상으로 지정하는 데 사용해요. 작업이 두 조건을 모두 충족해야 한다면 둘 다 사용해요.

관리자가 표준 GitHub 호스팅 러너를 비활성화했다면 러너 그룹만 사용할 수 있어요.

러너 그룹으로 대상 지정하기

워크플로에서 러너 그룹 이름을 참조해요. 특정 그룹의 사용 가능한 러너에 작업을 라우팅하려면 이 방법을 사용해요.

이 예제에서 러너는 build-runners라는 그룹에 추가되었어요. runs-on 키가 build-runners 그룹의 사용 가능한 러너에 작업을 보내요:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on: 
      group: build-runners
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v7
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

이 예제에서 runs-on 키가 macos-build-runners 그룹의 사용 가능한 러너에 작업을 보내요:

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on:
      group: macos-build-runners
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

워크플로 레이블로 대상 지정하기

특정 레이블을 공유하는 러너로 작업을 라우팅하려면 워크플로에서 워크플로 레이블을 참조해요.

더 큰 러너에는 러너 이름과 일치하는 워크플로 레이블이 자동으로 할당돼요.

이 예제에서 runs-on 키는 ubuntu-24.04-16core 레이블이 할당된 사용 가능한 러너에 작업을 보내요:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      labels: ubuntu-24.04-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v7
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

이 예제에서 runs-on 키는 windows-2022-16core 레이블이 할당된 사용 가능한 러너에 작업을 보내요:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      labels: windows-2022-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v7
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

macOS 더 큰 러너의 경우 GitHub 정의 워크플로 레이블이나, 러너를 만들 때 설정한 더 큰 러너 이름에서 자동으로 할당되는 워크플로 레이블을 사용할 수 있어요. 사용 가능한 macOS 워크플로 레이블 목록은 더 큰 러너 참조를 참고하세요.

이 예제에서 runs-on 키는 macos-26-xlarge 레이블이 할당된 사용 가능한 러너에 작업을 보내요:

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on: macos-26-xlarge
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

레이블과 그룹을 사용해 작업 실행 위치 제어하기

작업이 특정 레이블도 가진 특정 그룹의 러너에서만 실행되어야 할 때 레이블과 그룹을 모두 사용해요. 러너는 이 두 요구 사항을 모두 충족해야 작업을 실행할 자격이 돼요.

그룹과 레이블을 결합하면 러너는 작업을 실행할 자격이 되려면 두 요구 사항을 모두 충족해야 해요.

이 예제에서 runs-on 키는 grouplabels를 결합해, 그룹 내에서 일치하는 레이블도 가진 사용 가능한 러너에 작업을 라우팅해요:

name: learn-github-actions
on: [push]
jobs:
  check-bats-version:
    runs-on:
      group: ubuntu-runners
      labels: ubuntu-24.04-16core
    steps:
      - uses: actions/checkout@v6
      - uses: actions/setup-node@v7
        with:
          node-version: '14'
      - run: npm install -g bats
      - run: bats -v

이 예제에서 runs-on 키는 grouplabels를 결합해, 그룹 내에서 일치하는 레이블도 가진 사용 가능한 러너에 작업을 라우팅해요:

name: learn-github-actions
on: [push]
jobs:
  check-swift-version:
    runs-on:
      group: macos-runners
      labels: macos-26-xlarge
    steps:
      - uses: actions/checkout@v6
      - name: Build
        run: swift build
      - name: Run tests
        run: swift test

더 알아보기 (Learn more)

runs-on 키의 구문 세부 정보는 GitHub Actions용 워크플로 구문을 참고하세요.

사양, 레이블, 제한 사항, 문제 해결 정보는 더 큰 러너 참조를 참고하세요.