注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。
概要
jobs.<job_id>.runs-on
を使って、ジョブを実行するマシンの種類を定義します。
-
宛先マシンは、セルフホステッド ランナーにすることができます。
-
ランナーに割り当てられたラベルに基づいてランナーをターゲットにすることができます。
-
1 つの文字列として、または文字列の配列として
runs-on
を指定できます。 -
文字列の配列を指定すると、指定したすべての
runs-on
値に一致するすべてのランナーでワークフローが実行されます。 -
複数のマシンでワークフローを実行する場合は、
jobs.<job_id>.strategy
を使います。
注: GitHub ホステッド ランナーは、現在 GitHub Enterprise Server でサポートされていません。 GitHub public roadmap で、今後の計画的なサポートの詳細を確認できます。
GitHub ホステッド ランナーの選択
GitHub ホステッド ランナーを使うと、各ジョブは runs-on
で指定したランナー イメージの新しいインスタンスで実行されます。
利用可能なGitHubホストランナーの種類は以下のとおりです。
ランナー イメージ | YAML ワークフロー ラベル | メモ |
---|---|---|
Windows Server 2022 |
windows-latest または windows-2022
|
windows-latest ラベルは現在、Windows Server 2022 ランナー イメージを使用しています。
|
Windows Server 2019 |
windows-2019
|
なし |
Ubuntu 22.04 |
ubuntu-latest または ubuntu-22.04
|
ubuntu-latest ラベルは現在、Ubuntu 22.04 ランナー イメージを使用しています。
|
Ubuntu 20.04 |
ubuntu-20.04
|
なし |
Ubuntu 18.04 [非推奨] |
ubuntu-18.04
|
ubuntu-20.04 または ubuntu-22.04 に移行。 詳しくは、こちらの GitHub のブログ記事をご覧ください。
|
macOS 13 Ventura [Beta] |
macos-13 または macos-13-xl
|
なし |
macOS 12 Monterey |
macos-latest 、macos-12 、macos-latest-xl または macos-12-xl
|
現在、macos-latest と macos-latest-xl のワークフロー ラベルでは、macOS 12 ランナー イメージが使われています。 1 分あたりの macOS XL ランナー (12 コア) の料金については、「GitHub Actions の課金について」をご覧ください。
|
macOS 11 Big Sur |
macos-11
|
なし |
注: -latest
ランナー イメージは、GitHub が提供する最新の安定したイメージであり、オペレーティング システム ベンダーから入手できるオペレーティング システムの最新バージョンではない可能性があります。
警告: ベータ版および非推奨のイメージは、"現状のまま"、"保証なし"、"利用可能な状態" で提供され、サービス レベル アグリーメントと保証から除外されます。 ベータ版のイメージは、カスタマー サポートでカバーされない場合があります。
例: オペレーティング システムの指定
runs-on: ubuntu-latest
詳しくは、「GitHub ホステッド ランナーの概要」を参照してください。
セルフホステッド ランナーの選択
ジョブにセルフホステッド ランナーを指定するには、ワークフロー ファイルでセルフホステッド ランナーのラベルを使って runs-on
を設定します。
すべてのセルフホステッド ランナーに self-hosted
ラベルが含まれます。 このラベルのみを使うと、セルフホステッド ランナーが選ばれます。 オペレーティング システムやアーキテクチャなど、特定の条件を満たすランナーを選ぶには、self-hosted
で始まり (リストの最初にこれを示す必要があります)、必要に応じて追加のラベルを含むラベルの配列を指定することをお勧めします。 ラベルの配列を指定すると、指定したラベルをすべて持つランナーのキューにジョブが入れられます。
self-hosted
ラベルは必須ではありませんが、セルフホステッド ランナーを使う場合は、自分のジョブから現在または将来の GitHub ホスト ランナーが意図せずに指定されないことを確実にするため、それを指定することを強くお勧めします。
例: ランナー選択のためのラベルの使用
runs-on: [self-hosted, linux]
詳細については、「セルフホステッド ランナーの概要」および「ワークフローでのセルフホストランナーの利用」を参照してください。