Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

외부 CI 러너

Rust 프로젝트는 주로 GitHub Actions에서 지속적 통합(CI)을 실행합니다. GitHub Actions가 특정 타깃을 기본적으로 지원하지 않는 경우에는 자체 호스팅 러너를 사용합니다.

사용 가능한 소프트웨어

GitHub Actions 자체 호스팅 러너에는 보통 GitHub Actions 호스팅 러너(예: ubuntu-latest)에서 사용할 수 있는 소프트웨어가 모두 들어 있지는 않습니다.

자체 호스팅 러너에서 CI가 실패하면 필요한 소프트웨어를 사용할 수 있는지 확인하십시오. 사용할 수 없다면 GitHub Actions 워크플로에서 직접 설치할 수 있습니다.

정책

새 외부 CI 러너를 추가하려면 먼저 저희 정책을 읽어 주십시오.

구성된 외부 CI 러너

이 절에서는 Rust 프로젝트의 CI에서 실행되도록 구성된 외부 CI 러너를 나열합니다.

아래 목록에 있는 각 필드의 설명은 다음과 같습니다.

  • max concurrency: 이 유형의 러너 중 사용 가능한 러너의 수입니다. 이 값에 따라 해당 러너에서 실행할 수 있는 GitHub Actions 작업의 최대 수가 정해집니다. 동시 실행 수는 저장소 간에 공유됩니다. 모든 러너가 사용 중이면 GitHub Actions는 사용 가능한 러너가 생길 때까지 작업을 대기열에 넣습니다.
  • runs-on: 이 러너를 사용하려면 GitHub Actions 워크플로의 runs-on 필드에 지정해야 하는 레이블입니다. 러너가 어디에서 사용되는지 확인하려면 GitHub 검색에서 해당 레이블을 검색하십시오.
  • repositories: 이 러너를 사용할 수 있도록 설정된 저장소입니다. 목록에 저장소를 추가하려면 이 파일에 대한 PR을 열어 주십시오. 러너에서 실행하려는 워크플로가 zizmor 검사를 통과하는지 확인하십시오.
  • contact: 러너 유지 관리를 담당하는 사람의 연락처입니다. 권장하는 연락 방법은 Zulip이며, #t-infra 채널에 새 토픽을 열고 담당자를 멘션하시면 됩니다.

powerpc64-unknown-linux-musl

  • 최대 동시성: 4
  • runs-on: ["self-hosted", "linux", "powerpc64", "musl"]
  • 저장소:
  • 연락처:
    • Zulip: Aelin
    • 이메일: aelin@postmarketos.org (더 빠른 응답)

riscv64gc-unknown-linux-gnu

  • runs-on:
    • Ubuntu 24 러너의 경우 ubuntu-24.04-riscv입니다.
    • Ubuntu 26 러너의 경우 ubuntu-26.04-riscv입니다.
  • 저장소:
  • 문서

powerpc64le-unknown-linux-gnu

  • runs-on: ubuntu-24.04-ppc64le
  • 유형: IBM 러너

s390x-unknown-linux-gnu

이 타깃은 여러 외부 러너에서 사용할 수 있습니다.

Canonical 러너:

  • runs-on: self-hosted-linux-s390x-resolute-large-rust (ubuntu-26.04)
  • 저장소: 모든 저장소에서 작동하므로 따로 활성화할 필요가 없습니다.
  • 유형: Canonical 러너.

IBM 러너:

러너 유형

이 섹션에서는 둘 이상의 러너에 공통되는 정보를 모아 정리합니다.

Canonical 러너

IBM 러너

이 GitHub App은 실행하려면 관리자 권한이 필요하므로 rust-lang/rust 저장소에는 설치할 수 없습니다. 자세한 내용은 이 GitHub 이슈를 참고하십시오.

인프라 세부 사항
  • GitHub App은 rust-lang-owner 사용자 계정에서 설치했습니다.
  • 러너는 이 GitHub 이슈와 여기에 연결된 GitHub 이슈들에서 요청되었습니다.