GitLab CI/CD 시작하기

CI/CD는 소프트웨어 개발의 지속적인 방법으로, 코드 변경을 계속해서 빌드, 테스트, 배포 및 모니터링합니다.

이 반복적인 프로세스는 새로운 코드를 이전 버전의 버그가 있는 또는 실패한 코드를 기반으로 개발할 가능성을 줄입니다. GitLab CI/CD는 개발 주기 초기에 버그를 잡아내어 프로덕션으로 배포되는 코드가 설정한 코드 표준을 준수하는 데 도움을 줍니다.

이 프로세스는 더 큰 워크플로우의 일부입니다:

Workflow

단계 1: .gitlab-ci.yml 파일 생성

GitLab CI/CD를 사용하려면 프로젝트 루트에 .gitlab-ci.yml 파일을 만들어야 합니다. 이 파일은 CI/CD 파이프라인 실행 중에 실행될 스테이지, 작업 및 스크립트를 지정합니다. 이 파일은 고유한 사용자 정의 구문이 있는 YAML 파일입니다.

이 파일에서 변수를 정의하고 작업 간의 의존성을 설명하며 각 작업이 언제, 어떻게 실행될지를 지정할 수 있습니다.

이 파일의 이름은 원하는 대로 지을 수 있지만, .gitlab-ci.yml이 가장 일반적이며 제품 설명서에서는 이를 .gitlab-ci.yml 파일 또는 CI/CD 구성 파일이라고 언급합니다.

더 많은 정보는 다음을 참조하세요:

단계 2: 러너 찾거나 만들기

러너는 작업을 실행하는 에이전트입니다. 이러너는 물리적인 머신이나 가상 인스턴스에서 실행할 수 있습니다. .gitlab-ci.yml 파일에서 작업 실행 시 사용할 컨테이너 이미지를 지정할 수 있습니다. 러너는 이미지를 로드하고 프로젝트를 복제한 다음 작업을 로컬로 또는 컨테이너 내에서 실행합니다.

GitLab.com을 사용하는 경우 Linux, Windows 및 macOS용 러너가 이미 사용 가능합니다. 그리고 원하는 경우 GitLab.com에서 자체 러너를 등록할 수 있습니다.

GitLab.com을 사용하지 않는 경우 다음을 수행할 수 있습니다:

  • Self-Managed형 인스턴스에 등록된 러너를 등록하거나 사용합니다.
  • 로컬 머신에 러너를 생성합니다.

더 많은 정보는 다음을 참조하세요:

단계 3: 파이프라인 정의

파이프라인은 .gitlab-ci.yml 파일에서 정의하는 것으로, 해당 파일의 내용이 러너에서 실행될 때 발생하는 작업입니다.

파이프라인은 작업과 스테이지로 구성됩니다:

  • 스테이지는 실행 순서를 정의합니다. 일반적인 스테이지로는 빌드, 테스트, 배포 등이 있을 수 있습니다.
  • 작업은 각 스테이지에서 수행할 작업을 지정합니다. 예를 들어, 작업은 코드를 컴파일하거나 테스트할 수 있습니다.

파이프라인은 커밋 또는 머지와 같은 여러 이벤트로 트리거될 수 있으며, 또한 예약될 수 있습니다. 파이프라인에서 다양한 도구와 플랫폼과 통합할 수 있습니다.

더 많은 정보는 다음을 참조하세요:

단계 4: 작업 일부로서 CI/CD 변수 사용

GitLab CI/CD 변수는 설정과 민감한 정보(비밀번호 또는 API 키 등)를 저장하고 작업에 전달하는 데 사용하는 키-값 쌍입니다.

CI/CD 변수를 사용하여 작업을 사용 가능한 다른 값으로 사용하도록 작업을 사용자화할 수 있습니다. 이를 위해 .gitlab-ci.yml 파일에 CI/CD 변수를 직접 설정하거나 프로젝트 설정에서 설정하거나 동적으로 생성할 수 있습니다. 프로젝트, 그룹 또는 인스턴스에 대해 변수를 정의할 수 있습니다.

두 종류의 변수가 있습니다: 사용자 정의 변수와 사전 정의된 변수.

  • 사용자 정의 변수는 사용자가 정의하는 변수입니다. GitLab UI, API 또는 설정 파일에서 생성하고 관리할 수 있습니다.
  • 사전 정의된 변수는 GitLab에 의해 자동으로 설정되며 현재 작업, 파이프라인 및 환경에 대한 정보를 제공합니다.

변수는 “보호됨” 또는 “마스킹됨”으로 표시할 수 있어 추가 보안이 가능합니다.

  • 보호된 변수는 보호된 브랜치 또는 태그에서 실행되는 작업에서만 사용할 수 있습니다.
  • 마스킹된 변수는 민감한 정보가 노출되는 것을 방지하기 위해 작업 로그에서 값을 숨깁니다.

더 많은 정보는 다음을 참조하세요:

단계 5: CI/CD 컴포넌트 사용

CI/CD 컴포넌트는 재사용 가능한 파이프라인 구성 유닛입니다. 전체 파이프라인 구성이나 더 큰 파이프라인의 일부를 컴포넌트로 사용합니다.

include:component를 사용하여 파이프라인 구성에 컴포넌트를 추가할 수 있습니다.

재사용 가능한 컴포넌트를 사용하면 중복을 줄이고 유지 관리성을 향상시키며 프로젝트 전체에서 일관성을 유지할 수 있습니다. 컴포넌트 프로젝트를 만들고 CI/CD 카탈로그에 발행하여 여러 프로젝트 간에 컴포넌트를 공유할 수 있습니다.

GitLab에는 일반적인 작업 및 통합을 위한 CI/CD 컴포넌트 템플릿도 있습니다.

더 많은 정보는 다음을 참조하세요: