튜토리얼: 첫 번째 GitLab CI/CD 파이프라인 생성 및 실행
이 튜토리얼은 GitLab에서 첫 CI/CD 파이프라인을 구성하고 실행하는 방법을 보여줍니다.
기본적인 CI/CD 개념에 이미 익숙하다면 복잡한 파이프라인 생성 튜토리얼에서 일반적인 키워드를 학습할 수 있습니다.
Prerequisites
시작하기 전에 다음 사항을 확인하세요:
- CI/CD를 사용하려는 GitLab 프로젝트가 있어야 합니다.
- 프로젝트에 대한 Maintainer 또는 Owner 역할이 있어야 합니다.
프로젝트가 없는 경우, https://gitlab.com에서 무료로 공개 프로젝트를 생성할 수 있습니다.
실행 단계
첫 번째 파이프라인을 생성하고 실행하려면 다음 단계를 수행하세요:
-
사용 가능한 러너가 있는지 확인하여 작업을 실행합니다.
GitLab.com을 사용하는 경우, 이 단계를 건너뛸 수 있습니다. GitLab.com에서는 인스턴스 러너를 제공합니다.
-
귀하의 저장소 루트에
.gitlab-ci.yml
파일을 생성하세요. 이 파일은 CI/CD 작업을 정의하는 곳입니다.
파일을 저장소에 커밋하면 러너가 작업을 실행합니다. 작업 결과는 파이프라인에서 표시됩니다.
사용 가능한 러너가 있는지 확인
GitLab에서 러너는 CI/CD 작업을 실행하는 에이전트입니다.
사용 가능한 러너를 확인하려면 다음과 같이 수행하세요:
- 설정 > CI/CD로 이동하고 러너를 확장합니다.
최소한 하나의 활성 상태인 러너가 있는 한, 작업을 처리할 수 있는 사용 가능한 러너가 있습니다.
러너가 없는 경우
러너가 없는 경우:
- 로컬 컴퓨터에 GitLab 러너를 설치합니다.
- 프로젝트에 러너를 등록하세요.
shell
executor를 선택합니다.
귀하의 CI/CD 작업이 실행되면, 나중에 해당 단계에서 작업은 로컬 컴퓨터에서 실행됩니다.
.gitlab-ci.yml
파일 생성
이제 .gitlab-ci.yml
파일을 생성하세요. 이 파일은 YAML 파일로,
GitLab CI/CD에 대한 지시 사항을 지정하는 곳입니다.
이 파일에서는 다음을 정의합니다:
- 러너가 실행해야 하는 작업의 구조 및 순서.
- 특정 조건을 만났을 때 러너가 내려야 하는 결정.
프로젝트에 .gitlab-ci.yml
파일을 생성하려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하여 프로젝트를 찾습니다.
- 코드 > 저장소를 선택합니다.
-
파일 목록 위에서 커밋하려는 브랜치를 선택합니다. 확신이 없다면
master
또는main
을 둘러보거나 그대로 둔 채로 플러스 아이콘()을 선택하고 새 파일을 선택하세요. -
파일 이름에
.gitlab-ci.yml
을 입력하고, 더 큰 창에 다음 샘플 코드를 붙여넣으세요:build-job: stage: build script: - echo "Hello, $GITLAB_USER_LOGIN!" test-job1: stage: test script: - echo "This job tests something" test-job2: stage: test script: - echo "This job tests something, but takes more time than test-job1." - echo "After the echo commands complete, it runs the sleep command for 20 seconds" - echo "which simulates a test that runs 20 seconds longer than test-job1" - sleep 20 deploy-prod: stage: deploy script: - echo "This job deploys something from the $CI_COMMIT_BRANCH branch." environment: production
이 예제는
build-job
,test-job1
,test-job2
,deploy-prod
네 개의 작업을 보여줍니다.echo
명령의 설명은 작업을 볼 때 UI에 표시됩니다. 사전 정의된 변수$GITLAB_USER_LOGIN
및$CI_COMMIT_BRANCH
의 값은 작업을 실행할 때 채워집니다. - 변경 사항 커밋을 선택합니다.
파이프라인이 시작되고, .gitlab-ci.yml
파일에서 정의한 작업이 실행됩니다.
파이프라인 및 작업 상태 보기
이제 파이프라인 및 해당 작업을 살펴봅니다.
-
빌드 > 파이프라인으로 이동합니다. 세 개의 단계가 있는 파이프라인이 표시됩니다:
-
파이프라인 ID를 선택하여 파이프라인의 시각적 표현을 볼 수 있습니다:
-
예를 들어
deploy-prod
를 선택하여 작업의 세부 정보를 볼 수 있습니다:
GitLab에서 첫 CI/CD 파이프라인을 성공적으로 생성했습니다. 축하합니다!
이제 .gitlab-ci.yml
을 사용자 정의하여 더 고급 작업을 정의할 수 있습니다.
.gitlab-ci.yml
팁
.gitlab-ci.yml
파일 사용에 대한 몇 가지 팁입니다.
완전한 .gitlab-ci.yml
구문은 전체 CI/CD YAML 구문 참조 페이지에서 확인할 수 있습니다.
-
파이프라인 편집기를 사용하여
.gitlab-ci.yml
파일을 편집합니다. - 각 작업에는 스크립트 섹션이 있으며, 스테이지에 속합니다:
-
stage
는 작업의 순차적 실행을 설명합니다. 사용 가능한 러너가 있으면, 한 스테이지의 작업은 병렬로 실행됩니다. -
needs
키워드를 사용하여 스테이지 순서와 상관없이 작업 실행을, 파이프라인 속도와 효율성을 높입니다.
-
- 작업 및 스테이지의 수행 방식을 사용자 정의하기 위해 추가 설정을 할 수 있습니다:
-
rules
키워드를 사용하여 작업을 실행하거나 건너뛸 조건을 지정합니다.only
및except
레거시 키워드는 여전히 지원되지만, 같은 작업에서rules
과 함께 사용할 수는 없습니다. -
cache
및artifacts
를 사용하여 파이프라인에서 작업 및 스테이지 간에 유지되어야 하는 정보를 저장할 수 있습니다. 이러한 키워드들은 각 작업에 대해 즉시 생성되는 러너를 사용할 때라도, 의존성 및 작업 결과를 저장하는 방법입니다. -
default
키워드를 사용하여 모든 작업에 적용되는 추가 구성을 지정합니다. 이 키워드는 종종before_script
및after_script
를 정의하는 데 사용됩니다.
-
관련 주제
이전:
시청:
- GitLab 및 CI/CD 첫 경험. 이 비디오에는 GitLab의 간단한 소개, CI/CD의 첫 단계, Go 프로젝트 빌드, 테스트 실행, CI/CD 파이프라인 편집기 사용, 비밀과 보안 취약점 검색 및 더 많은 비동기 연습을 위한 더 많은 실습이 포함되어 있습니다.
- GitLab CI 소개. 이 워크샵은 Web IDE를 사용하여 CI/CD를 통해 소스 코드를 빌드하고 단위 테스트를 실행하는 것을 빠르게 시작합니다.