CI/CD for GitLab Runner 사용하기
이 안내서를 사용하여 CI/CD for GitLab 서비스를 시작 하십시오. Shared runner 및 Project runner 사용법에 대해 안내합니다.
관련 안내서
목차
2단계: CI/CD for GitLab runner 사용하기
개요
CI/CD for GitLab 서비스는 gitlab-runner를 통해 CI/CD 서비스를 제공합니다. gitLab-runner는 GitLab과 함께 작동하여 코드 변경 사항을 자동으로 빌드, 테스트 및 배포하는 CI 도구입니다.
Runner는 프로젝트의 .gitlab-ci.yml 파일에 정의된 파이프라인(ex: 빌드, 테스트, 베포)에 따라 실행됩니다. 이러한 단계는 사용자가 직접 .gitlab-ci.yml 파일을 작성하여 관리할 수 있습니다.
Runner가 작업을 실행하면 실시간으로 상태, 로그 등과 같은 모든 결과물을 GitLab 서버로 전송합니다. 이를 통해 파이프라인 및 해당 작업의 진행 상황을 모니터링하고 검토할 수 있습니다.
GitLab-Runner에서 제공하는 runner의 종류는 3가지(Shared, Group, Project)가 있습니다.
- Shared: GitLab 서버에 직접 등록되는 runner로, 해당 GitLab 서버에 등록된 모든 프로젝트에서 사용할 수 있는 runner
- Group: 특정 Group만 사용할 수 있는 runner로, 해당 Group의 멤버만 사용할 수 있는 runner
- Project: 특정 Project에서만 사용할 수 있는 runner로, 해당 Project에서만 사용할 수 있는 runner
1단계: .gitlab-ci.yml 파일구성
GitLab runner는
.gitlab-ci.yml
파일의 구성에 따라 동작합니다.
1. variables: gitlab-ci.yml에서 사용할 변수 선언
2. stages: gitlab-ci.yml에서 수행할 작업 단계와 순서를 정의
3. include: gitlab-ci.yml에서 포함될 환경설정을 정의
4. job: 수행할 작업을 정의
5. script: 실제 시행될 스크립트문(shell)
6. only: 수행될 branch(ex: main/dev)를 정의
7. tags: 해당 job을 수행할 runner의 tag를 작성(ex: shared-runner1)
*.gitlab-ci.yml 예시파일
stages:
build
test
deploy
include:
local: 'build.yml'
variables:
TARGET_PROJECT: "ssg/git-runner"
ssg-build-job:
stage: build
script:
- echo $JOB_START
only:
- dev
tags:
- shared-runner1
ssg-testing-job:
stage: test
script:
- echo $JOB_START
only:
- dev
tags:
- shared-runner1
ssg-deploy-stage:
stage: deploy
script:
- echo $JOB_START
tags:
- shared-runner1
only:
- main
2단계: Shared runner 사용하기
CI/CD for GitLab에는 5개의 Shared-runner를 제공합니다. TAG: shared-runner1, shared-runner2, shared-runner3, shared-runner4, shared-runner5.
:bell: Tip: CI/CD를 구축하면서 특정 runner에만 작업이 집중되지 않고, 5개의 러너에 작업이 골고루 분산되도록 CI/CD를 구축해야합니다!
1. Shared-runner
사용하기
- Shared-runner를 통한 CI/CD를 구축할때, 5개중 1개의 runner를 사용
- .gitlab-ci.yml파일의
tags:
부분에 사용할 러너의 TAG를 입력
다음 단계
- CI/CD for GitLab 서비스를 통해 CI/CD 환경을 구축할 수 있습니다.