/
튜토리얼: 첫 번째 GitLab CI/CD 파이프라인 생성 및 실행

튜토리얼: 첫 번째 GitLab CI/CD 파이프라인 생성 및 실행

계층: 무료, 프리미엄, 얼티밋
제공: http://GitLab.com, 자체 관리, GitLab 전용

이 튜토리얼에서는 GitLab에서 첫 번째 CI/CD 파이프라인을 구성하고 실행하는 방법을 보여줍니다.

이미 기본 CI/CD 개념 에 익숙하다면 튜토리얼: 복잡한 파이프라인 만들기 에서 일반적인 키워드에 대해 알아볼 수 있습니다 .

필수 조건

시작하기 전에 다음 사항이 있는지 확인하세요.

  • CI/CD를 사용하고 싶은 GitLab 프로젝트.

  • 프로젝트의 유지 관리자 또는 소유자 역할입니다.

프로젝트가 없으면 https://gitlab.com 에서 무료로 공개 프로젝트를 만들 수 있습니다 .

단계

첫 번째 파이프라인을 만들고 실행하려면:

  1. 작업을 진행할 러너가 있는지 확인하세요.

    GitLab.com을 사용 중이라면 이 단계를 건너뛸 수 있습니다. GitLab.com은 인스턴스 러너를 제공합니다.

  2. 저장소 루트에 .gitlab-ci.yml파일을 만듭니다. 이 파일은 CI/CD 작업을 정의하는 것것입니다.

파일을 저장소에 커밋하면 러너가 작업을 실행합니다. 작업 결과는 파이프라인에 표시됩니다.

러너가 있는지 확인하세요

GitLab에서 러너는 CI/CD 작업을 실행하는 에이전트입니다.

사용용 가능한 러너를 보려면:

  1. 왼쪽 사이드바에서 검색을 선택하거나 이동하여 프로젝트를 찾으세요.

  2. 설정 > CI/CD를 선택합니다 .

  3. 러너를 확장합니다 .

활성 상태인 러너가 최소 한 개 이상 있고 그 옆에 녹색 원이 표시되어 있다면 작업을 처리할 수 있는 러너가 있다는 뜻입니다.

러너가 없다면

러너가 없는 경우:

  1. 로컬 머신에 GitLab Runner를 설치하세요.

  2. 러너를 등록하세요. shell실행자를 선택하세요. CI/CD 작업이 실행되면 나중 단계에서 로컬 머신에서 실행됩니다.

.gitlab-ci.yml파일 생성

이제 .gitlab-ci.yml파일을 만듭니다 . GitLab CI/CD에 대한 지침을 지정하는 YAML파일입니다.

이 파일에서 다음을 정의합니다.

  • 러너가 실행해야 하는 작업의 구조와 순서

  • 특정 상황에 직면했을 때 러너가 내려야 할 결정

프로젝트에서 .gitlab-ci.yml파일을 만들려면 :

  1. 왼쪽 사이드바에서 검색을 선택하거나 이동하여 프로젝트를 찾으세요.

  2. 코드 > 저장소를 선택합니다.

  3. 파일 목록 위에서 커밋하려는 브랜치를 선택합니다. 확실하지 않은 경우 master 또는 main 브랜치를 그대로 두세요. 그런 다음 더하기 아이콘(+) 및 새 파일을 선택합니다:

    image-20250107-013907.png

     

  4. 파일 이름에 .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의 값이 채워집니다.

  5. Commit changes 를 선택합니다.

파이프라인은 .gitlab-ci.yml파일에서 정의한 작업을 시작하고 실행합니다.

파이프라인 및 작업 상태 보기

이제 파이프라인과 그 안의 작업을 살펴보세요.

  1. Build > Pipelines 로 이동합니다. 세 단계로 구성된 파이프라인이 표시되어야 합니다:

    The pipeline list shows a running pipeline with 3 stages
  2. 파이프라인 ID를 선택하면 파이프라인의 시각적 표현을 볼 수 있습니다:

  3. 작업 이름을 선택하여 작업의 세부 정보를 봅니다. 예) deploy-prod:

GitLab에서 첫 번째 CI/CD 파이프라인을 성공적으로 만들었습니다. 축하합니다!

이제 .gitlab-ci.yml을 커스터마이징하고 더 고급 작업을 정의할 수 있습니다.

.gitlab-ci.yml

다음은 .gitlab-ci.yml파일 작업을 시작하기 위한 몇 가지 팁입니다.

자세한 .gitlab-ci.yml구문은 CI/CD YAML syntax reference를 참조하세요.

  • 파이프라인 편집기를 사용하여 .gitlab-ci.yml파일을 편집합니다.

  • 각 작업은 스크립트 섹션을 포함하며 하나의 스테이지에 속합니다:

    • stage 는 작업의 순차적 실행을 설명합니다. 사용 가능한 러너가 있는 경우 단일 스테이지의 작업이 병렬로 실행됩니다.

    • needs 키워드를 사용하여 단계 순서와 상관없이 작업을 실행하여 파이프라인 속도와 효율성을 높일 수 있습니다.

  • 추가 구성을 설정하여 작업 및 스테이지의 수행 방식을 사용자 지정할 수 있습니다:

    • rules 키워드를 사용해 작업을 실행하거나 건너뛸 시기를 지정할 수 있습니다. 기존의 onlyexcept 는 계속 지원되지만 동일한 작업에서 rules와 함께 사용할 수는 없습니다.

    • cacheartifacts를사용하여 파이프라인에서 작업 및 단계 전반의 정보를 영구적으로 유지하세요. 이러한 키워드는 각 작업에 임시 러너를 사용하는 경우에도 종속성 및 작업 출력을 저장하는 방법입니다.

    • 모든 작업에 적용되는 추가 구성을 지정하려면 default키워드를 사용합니다. 이 키워드는 모든 작업에서 실행되어야 하는 before_scriptafter_script섹션을 정의하는 데 자주 사용됩니다.