InfoGrab Docs

GitLab Runner 개발에 기여하기

GitLab Runner 개발 환경 설정, 의존성 설치, 빌드, 테스트 실행을 위한 단계별 가이드

GitLab Runner는 두 가지 모드로 작동할 수 있는 Go 바이너리입니다: GitLab Runner가 로컬에서 작업을 실행하는 방식("instance" 실행기). 러너 매니저가 GitLab Runner Helper를 사용하여 아티팩트를 가져오는 오토스케일 환경에 작업을 위임하는 방식. instance 실행기 모드(1)로 GitLab Runner를 개발하는 경우, 필요한 설정은 Go 환경뿐입니다. 매니저 및 Helper 모드(2)로 GitLab Runner를 개발하는 경우, Docker 빌드 환경도 필요합니다. 또한 Kubernetes에서 매니저 또는 Helper를 실행하려면 작동하는 클러스터가 필요합니다. 다음 지침은 mise 를 사용하여 Go 버전을 관리하는 Go 환경을 설정합니다. 이미 이 설정이 있거나 스스로 알고 있는 경우 2단계("의존성 및 Go 런타임 설치")를 건너뛸 수 있습니다. 로컬에서 Docker 및 Kubernetes를 제공하기 위해 3단계에서 Rancher Desktop을 설정합니다. 하나 또는 둘 다 필요하지 않으면 3단계("Rancher Desktop 설치")를 건너뛰거나 Rancher Desktop에서 k3s (Kubernetes)를 비활성화할 수 있습니다. 권장 환경 # Go와 Rancher Desktop을 개발용으로 설치하기 위한 권장 환경은 로컬 노트북 또는 데스크탑입니다. 클라우드에서 Rancher Desktop을 실행하기 위해 중첩 가상화를 사용하는 것도 가능하지만( k3s 를 VM에서 실행) 설정이 더 복잡합니다. 러너 Shorts 비디오 튜토리얼 # 설정 및 변경에 대한 Runner Shorts(약 20분 비디오)를 따라가도 됩니다: 시작하기 전에 위의 권장 환경 섹션을 읽어보세요 GitLab Runner 개발 환경 설정 GitLab Runner 코드 워크스루 GitLab Runner 변경 사항 로컬에서 만들고 테스트하기 1. GitLab Runner 클론 # git clone https://gitlab.com/gitlab-org/gitlab-runner.git 오토스케일 모드(매니저 및 Helper)에서 GitLab Runner를 개발하는 경우 Taskscaler, Fleeting 및 관련 플러그인 중 하나 이상을 체크아웃할 수 있습니다. 한 패키지의 로컬 변경 사항이 다른 패키지에 표시되도록 Go 워크스페이스를 사용하세요. git clone https://gitlab.com/gitlab-org/fleeting/taskscaler.git git clone https://gitlab.com/gitlab-org/fleeting/fleeting.git git clone https://gitlab.com/gitlab-org/fleeting/fleeting-plugin-aws.git git clone https://gitlab.com/gitlab-org/fleeting/fleeting-plugin-googlecompute.git go work init go work use gitlab-runner g