호스팅된 Windows 러너

Tier: Free, Premium, Ultimate Offering: GitLab.com Status: Beta

Windows에서 호스팅된 러너는 Google Cloud Platform에서 가상 머신을 시작하여 오토스케일링합니다. 이 솔루션은 GitLab이 custom executor를 위해 개발한 오토스케일링 드라이버를 사용합니다. Windows에서 호스팅된 러너는 베타 상태입니다.

Windows 러너를 안정적인 상태로 유지하고 일반적으로 사용 가능하도록(GA) 계속해서 개선하려 합니다. 이에 대한 작업은 관련된 epic에서 확인할 수 있습니다.

Windows용 사용 가능한 머신 유형

GitLab은 Windows용 호스팅 러너에 다음과 같은 머신 유형을 제공합니다.

러너 태그 vCPU 메모리 스토리지
saas-windows-medium-amd64 2 7.5 GB 75 GB

지원되는 Windows 버전

Windows 러너 가상 머신 인스턴스는 GitLab 도커 executor를 사용하지 않습니다. 따라서 파이프라인 구성에서 image 또는 services를 지정할 수 없습니다.

다음 Windows 버전 중 하나에서 작업을 실행할 수 있습니다:

버전 상태
Windows 2022 GA

미리 설치된 소프트웨어 문서에서 사용 가능한 미리 설치된 소프트웨어의 전체 디렉터리을 찾을 수 있습니다.

지원되는 셸

Windows에서 호스팅된 러너는 PowerShell을 셸로 구성합니다. 따라서 .gitlab-ci.yml 파일의 script 섹션은 PowerShell 명령을 요구합니다.

예시 .gitlab-ci.yml 파일

아래는 Windows 러너를 사용하는 방법을 보여주는 샘플 .gitlab-ci.yml 파일입니다.

.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}"

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 러너 플릿에서 빌드 시작 시간이 느릴 수 있습니다. 가상 머신의 사전 프로비저닝을 가능하게 하는 오토스케일러의 업데이트가 향후 릴리즈에서 제안됩니다. 이 업데이트는 Windows 플릿에서 가상 머신을 프로비저닝하는 데 걸리는 시간을 크게 줄이기 위한 것입니다. 자세한 정보는 이슈 32를 참조하세요.
  • Windows 러너 플릿은 가끔 사용할 수 없을 수 있습니다.
  • Linux 러너보다 Windows 러너에서 작업이 대기 상태에 머무를 수 있습니다.
  • Windows 러너 플릿을 사용하는 파이프라인을 업데이트해야 하는 파손 변경 사항이 발생할 수 있습니다.