테스트용 패키지 빌드
새 기능을 개발하거나 기존 기능을 수정하는 동안 해당 변경 사항을 포함하는 설치 가능한 패키지(또는 Docker 이미지)가 테스트에 사용 가능하면 도움이 됩니다. 이를 위해 GitLab CI/CD 파이프라인에서 수동 작업이 제공되며, Omnibus GitLab 저장소에서 해당 파이프라인을 트리거할 수 있습니다. 이를 통해 다음이 생성됩니다:
- Ubuntu 16.04용 deb 패키지(빌드 아티팩트로 제공)
- Docker 이미지. Docker 이미지는 Omnibus GitLab 컨테이너 레지스트리에 푸시됩니다. GitLab Enterprise Edition용 이미지는
gitlab-ee
로, GitLab Community Edition용 이미지는gitlab-ce
로 지정됩니다. - 이미지 태그는 파이프라인을 트리거한 커밋입니다.
GitLab CE 또는 GitLab EE 프로젝트에 커밋을 푸시하면, 해당 커밋의 파이프라인에는 .pre
단계의 e2e:test-on-omnibus
자식 파이프라인 내에 trigger-omnibus
작업이 있습니다.
자식 파이프라인이 시작되면 trigger-omnibus
를 선택하여 TRIGGERED_EE_PIPELINE
이라는 자식 파이프라인으로 이동할 수 있습니다.
다음으로 trigger-package
단계에서 Trigger:package
작업을 선택합니다.
Trigger:package
작업이 완료되면 해당 아티팩트를 GitLab에 업로드한 후, .deb
파일을 탐색하여 다운로드하거나 GitLab API를 사용하여 파일을 직접 VM에 다운로드할 수 있습니다. 이러한 아티팩트의 유효 기간이 짧으므로 약 하루 이내에 자동으로 삭제됩니다.
구성 요소 버전 지정
GitLab 구성 요소(GitLab Workhorse, Gitaly, 또는 GitLab Pages 등) 중에서 특정 브랜치, 커밋 또는 태그에서 패키지를 만들고 싶은 경우 해당 구성 요소의 각각의 *_VERSION
파일에 브랜치 이름, 커밋 SHA 또는 태그를 지정할 수 있습니다. 예를 들어 0-1-stable
브랜치를 사용하여 패키지를 빌드하려면 GITALY_SERVER_VERSION
내용을 0-1-stable
로 수정하고 커밋을 푸시합니다. 이렇게 하면 빌드를 트리거할 수 있는 수동 작업이 생성됩니다.
Omnibus GitLab 저장소에서 브랜치 지정
Omnibus GitLab 저장소에 이미 특정 브랜치에 필요한 변경 사항이 있는 경우, .gitlab-ci.yml
에 OMNIBUS_BRANCH
라는 CI/CD 변수를 브랜치 이름으로 지정하여 커밋을 푸시합니다. 이렇게 하면 해당 브랜치로 패키지를 빌드할 수 있는 수동 작업이 생성됩니다.