InfoGrab Docs

Custom executor

GitLab Runner의 Custom executor를 사용하여 기본 지원 환경 외에 사용자 정의 실행 환경을 구성하는 방법을 설명합니다.

GitLab Runner는 기본적으로 지원하지 않는 환경(예: LXD 또는 Libvirt )을 위해 Custom executor를 제공합니다. GitLab Runner가 일부 실행 파일을 사용하여 환경을 프로비저닝하고, 실행하고, 정리하도록 구성하여 자체 executor를 만들 수 있습니다. custom executor에 구성하는 스크립트를 드라이버 라고 합니다. 예를 들어, LXD 드라이버 또는 Libvirt 드라이버 를 만들 수 있습니다. 구성 # 몇 가지 구성 키 중에서 선택할 수 있습니다. 일부는 선택 사항입니다. 다음은 사용 가능한 모든 구성 키를 사용한 Custom executor 구성 예제입니다: [[runners]] name = "custom" url = "https://gitlab.com" token = "TOKEN" executor = "custom" builds_dir = "/builds" cache_dir = "/cache" shell = "bash" [runners.custom] config_exec = "/path/to/config.sh" config_args = [ "SomeArg" ] config_exec_timeout = 200 prepare_exec = "/path/to/script.sh" prepare_args = [ "SomeArg" ] prepare_exec_timeout = 200 run_exec = "/path/to/binary" run_args = [ "SomeArg" ] cleanup_exec = "/path/to/executable" cleanup_args = [ "SomeArg" ] cleanup_exec_timeout = 200 graceful_kill_timeout = 200 force_kill_timeout = 200 필드 정의 및 필수 항목에 대해서는 [runners.custom] 섹션 구성을 참조하세요. 또한 [[runners]] 내부의 builds_dir 과 cache_dir 모두 필수 필드입니다. 작업 실행을 위한 필수 소프트웨어 # 사용자는 환경을 설정해야 하며, PATH 에 다음이 반드시 있어야 합니다: Git 및 Git LFS : 공통 필수 사항 을 참조하세요. GitLab Runner : 아티팩트 및 캐시 다운로드/업데이트에 사용됩니다. 단계 # Custom executor는 작업 세부 사항 구성, 환경 준비 및 정리, 환경에서 작업 스크립트 실행을 위한 단계를 제공합니다. 각 단계는 특정 사항에 대한 책임이 있으며 고려해야 할 다양한 사항이 있습니다. Custom executor가 실행하는 각 단계는 내장 GitLab Runner executor가 실행하는 시점과 동일한 시점에 실행됩니다. 실행된 각 단계는 실행 중인 작업에 대한 정보를 제공하는 특정 환경 변수에 접근할 수 있습니다. 모든 단계에서 다음 환경 변수를 사용할 수 있습니다: 표준 CI/CD 환경 변수 , 포함 사전 정의 변수 . Custom executor 러너 호스트 시스템에서 제공하는 모든 환경 변수.