Windows上のSaaSランナー(無料SaaS BETA)

Windows上のSaaS Runnerは、Google Cloud Platform上で仮想マシンを起動することでオートスケールします。このソリューションでは、GitLabによって開発されたオートスケーリングドライバを カスタムエグゼキュータに使用します。

これらのSaaS Runnerはベータ版であり、本番ワークロードには推奨されません。

Windowsランナーを安定した状態にし、一般的に利用できるようにするため、反復を続けたいと考えています。関連エピックで、この目標に向けた私たちの作業を追うことができます。

Windowsで利用可能なマシンタイプ

ランナータグvCPUメモリストレージ
shared-windows27.5 GB75 GB

対応Windowsバージョン

Windowsランナー仮想マシンインスタンスはGitLab Docker Executorを使用しません。つまり、パイプライン設定でimageservices を指定することはできません。代わりに、希望するWindowsバージョンのtags

以下のWindowsバージョンのいずれかでジョブを実行できます:

バージョンタグステータス
windows-1809Beta

利用可能なプリインストール・ソフトウェアの全リストは、プリインストール・ソフトウェアのドキュメントに記載されています。

note
ベースイメージで利用できないツールや依存関係を必要とするジョブを実行するたびに、それらのコンポーネントを新しくプロビジョニングされた VM にインストールする必要があるため、ジョブの総所要時間が長くなります。

サポートされるシェル

Windows 上の SaaS Runner では、PowerShell がシェルとして設定されています。そのため、.gitlab-ci.yml ファイルのscript セクションには PowerShell コマンドが必要です。

.gitlab-ci.yml ファイルの例

下記はWindows用Runnerの使用開始方法を示すサンプル.gitlab-ci.yml ファイルです:

.shared_windows_runners:
  tags:
    - shared-windows
    - windows-1809
  before_script:
    - Set-Variable -Name "time" -Value (date -Format "%H:%m")
    - echo ${time}
    - echo "started by ${GITLAB_USER_NAME}"

stages:
  - build
  - test

build:
  extends:
    - .shared_windows_runners
  stage: build
  script:
    - echo "running scripts in the build job"

test:
  extends:
    - .shared_windows_runners
  stage: test
  script:
    - echo "running scripts in the test job"

既知のイシュー

  • ベータ版機能のサポートについては、ベータ版をご覧ください。
  • 新しい Windows 仮想マシン(VM) の平均プロビジョニング時間は 5 分であるため、ベータ期間中は Windows Runner フリート上のビルドの開始時間が遅くなる可能性があります。仮想マシンの事前プロビジョニングを有効にするためのオートスケーラーのアップデートは、将来のリリースで提案されます。このアップデートは、Windowsフリート上のVMのプロビジョニングにかかる時間を大幅に短縮することを目的としています。詳細については、イシュー32を参照してください。
  • Windows Runnerフリートは、メンテナンスやアップデートのために利用できないことがあります。
  • ジョブは Linux Runner よりも長い間保留状態になることがあります。
  • Windowsランナーフリートを使っているパイプラインにアップデートが必要な変更を加える可能性があります。