- 단계 1:
.gitlab-ci.yml
파일 생성 - 단계 2: 러너 찾거나 만들기
- 단계 3: 파이프라인 정의
- 단계 4: 작업 일부로서 CI/CD 변수 사용
- 단계 5: CI/CD 컴포넌트 사용
GitLab CI/CD 시작하기
CI/CD는 소프트웨어 개발의 지속적인 방법으로, 코드 변경을 계속해서 빌드, 테스트, 배포 및 모니터링합니다.
이 반복적인 프로세스는 새로운 코드를 이전 버전의 버그가 있는 또는 실패한 코드를 기반으로 개발할 가능성을 줄입니다. GitLab CI/CD는 개발 주기 초기에 버그를 잡아내어 프로덕션으로 배포되는 코드가 설정한 코드 표준을 준수하는 데 도움을 줍니다.
이 프로세스는 더 큰 워크플로우의 일부입니다:
단계 1: .gitlab-ci.yml
파일 생성
GitLab CI/CD를 사용하려면 프로젝트 루트에 .gitlab-ci.yml
파일을 만들어야 합니다. 이 파일은 CI/CD 파이프라인 실행 중에 실행될 스테이지, 작업 및 스크립트를 지정합니다. 이 파일은 고유한 사용자 정의 구문이 있는 YAML 파일입니다.
이 파일에서 변수를 정의하고 작업 간의 의존성을 설명하며 각 작업이 언제, 어떻게 실행될지를 지정할 수 있습니다.
이 파일의 이름은 원하는 대로 지을 수 있지만, .gitlab-ci.yml
이 가장 일반적이며 제품 설명서에서는 이를 .gitlab-ci.yml
파일 또는 CI/CD 구성 파일이라고 언급합니다.
더 많은 정보는 다음을 참조하세요:
- 튜토리얼: 첫
.gitlab-ci.yml
파일 만들기 - CI/CD YAML 구문 참조, 모든 가능한 키워드를 나열합니다.
- 지속적 통합 개요
- 지속적 배포 개요
- CI 블로그 기초
단계 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 컴포넌트 템플릿도 있습니다.
더 많은 정보는 다음을 참조하세요: