Windows上でホストされるRunner
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com
- ステータス: ベータ
Windows上のRunnerは、Google Cloud Platform上で仮想マシンを起動することで、オートスケールします。このソリューションでは、GitLabがcustom executor用に開発したオートスケーリングドライバーを使用します。Windows上のホストされたRunnerは、ベータ版です。
安定した状態でWindows Runnerを取得し、一般提供するために、イテレーションを継続したいと考えています。この目標に向けた取り組みは、関連エピックで追跡できます。
Windowsで使用可能なマシンタイプ
GitLabは、Windows上のホストされたRunnerに対して、次のマシンタイプを提供しています。
| Runnerタグ | vCPU | メモリ | ストレージ |
|---|---|---|---|
saas-windows-medium-amd64 | 2 | 7.5 GB | 75 GB |
サポートされているWindowsバージョン
Windows Runnerの仮想マシンインスタンスは、GitLab Docker executorを使用しません。つまり、imageまたはservicesをパイプライン設定で指定できません。
以下のWindowsバージョンのいずれかでジョブを実行できます:
| バージョン | ステータス |
|---|---|
| Windows 2022 | GA |
利用可能なプリインストール済みソフトウェアの完全なリストは、プリインストール済みソフトウェアのドキュメントにあります。
サポートされているShell
Windows上のホストされたRunnerは、ShellとしてPowerShellが設定されています。したがって、.gitlab-ci.ymlファイルのscriptセクションには、PowerShellコマンドが必要です。
.gitlab-ci.ymlファイルの例
この.gitlab-ci.ymlファイルを使用して、Windows上のホストされたRunnerの使用を開始します:
.windows_job:
tags:
- saas-windows-medium-amd64
before_script:
- Set-Variable -Name "time" -Value (date -Format "%H:%m")
- echo ${time}
- echo "started by ${GITLAB_USER_NAME} / @${GITLAB_USER_LOGIN}"
build:
extends:
- .windows_job
stage: build
script:
- echo "running scripts in the build job"
test:
extends:
- .windows_job
stage: test
script:
- echo "running scripts in the test job"既知の問題
- ベータ機能のサポートの詳細については、ベータを参照してください。
- 新しいWindows仮想マシン(VM)の平均プロビジョニング時間は5分であるため、ベータ版ではWindows Runnerフリートでのビルドの開始時間が遅くなることがあります。仮想マシンの事前プロビジョニングを有効にするためにオートスケーラーを更新することは、将来のリリースで提案されています。この更新は、Windowsフリート上のVMをプロビジョニングするのにかかる時間を大幅に短縮することを目的としています。詳細については、イシュー32を参照してください。
- Windowsフリートは、メンテナンスまたはアップデートのために一時的に利用できなくなる場合があります。
- ジョブは、Linux Runnerよりも長く保留状態になる場合があります。
- Windows Runnerフリートを使用しているパイプラインのアップデートを必要とする破壊的な変更を導入する可能性があります。