GitLab CI-고급 CI 사용
환경 및 배포
환경은 CI (지속적 통합) 작업을 테스트, 빌드 및 배포하는 데 사용되며 GitLab을 사용하여 소프트웨어의 지속적인 배포를 제어합니다. GitLab CI는 프로젝트 배포를 추적 할 수 있으며 서버에 배포되는 항목을 알 수 있습니다.
환경의 이름은 environment : name 문자열 을 사용하여 정의 할 수 있으며 다음을 포함합니다.
- letters
- digits
- spaces
- -
- _
- /
- $
- {
- }
GitLab CI / CD에서 SSH 키 사용
SSH (Secure Shell 또는 Secure Socket Shell) 키를 설정하여 컴퓨터와 GitLab간에 안정적인 연결을 제공 할 수 있습니다. SSH 키는 다음과 같은 경우 GitLab CI / CD와 함께 사용할 수 있습니다.
- 내부 하위 모듈을 체크 아웃해야합니다.
- 패키지 관리자를 사용하여 개인 패키지를 다운로드해야합니다.
- 자신의 서버에 애플리케이션을 설치해야합니다.
- 빌드 환경에서 원격 서버로 SSH 명령을 실행합니다.
- 빌드 환경에서 원격 서버로 파일을 rsync해야합니다.
SSH 키 설정은 GitLab SSH 키 설정 장 에서 설명합니다 .
아티팩트
아티팩트는 성공 후 파일 및 디렉토리 목록을 작업에 첨부하는 데 사용됩니다. 유물은 다음 유형을 포함합니다-
- artifacts:name−이 지시문은 생성 된 아티팩트 아카이브의 이름을 지정하는 데 사용됩니다. 생성 된 아티팩트 아카이브의 고유 한 이름을 제공하므로 GitLab에서 아카이브를 다운로드 할 때 도움이됩니다.
- artifacts:when−이 지시문은 작업 실패시 아티팩트를 업로드하는 데 사용됩니다. 다음 값이 포함됩니다.
- on_success − 작업 성공시 이슈 업로드에 사용됩니다.
- on_failure − 작업 실패시 아티팩트를 업로드하는 데 사용됩니다.
- always − 작업 상태와 관계없이 아티팩트를 업로드하는 데 사용됩니다.
- artifacts:expire_in − 아티팩트가 GitLab에 업로드 및 저장되기 때문에 만료되어 삭제되기 전에 얼마나 오래 유지되어야 하는지를 정의합니다.
파이프 라인 트리거
트리거는 API 호출로 특정 분기 또는 태그를 강제로 다시 빌드 할 수 있으며 기존 라벨이있는 트리거 는 현재 프로젝트에 액세스 할 수 있습니다.
아래 단계와 같이 새 트리거를 추가 할 수 있습니다.
Step 1 − GitLab 계정에 로그인하고 프로젝트로 이동 −
Step 2− 설정 탭 에서 CI / CD 옵션을 클릭 하고 파이프 라인 트리거 옵션을 확장합니다. −
트리거에 대한 설명을 입력하고 트리거 추가 버튼을 클릭합니다.
Step 3 − 다음으로 트리거 생성 후 성공 메시지를 표시합니다 −
Step 4− 이제 설정 탭 에서 CI / CD 옵션으로 이동 하여 파이프 라인 트리거 옵션을 확장합니다 . 아래 이미지와 같이 토큰과 함께 새로 생성 된 트리거를 볼 수 있습니다.
파이프 라인 일정
특정 간격으로 파이프 라인 일정을 사용하여 파이프 라인을 실행할 수 있습니다. 파이프 라인 일정을 생성하려면 아래 단계를 사용하십시오.
Step 1 − GitLab 계정에 로그인하고 프로젝트로 이동 −Step 2− CI / CD 탭 에서 일정 옵션을 클릭하고 새 일정 버튼을 클릭합니다. −
Step 3− 다음으로 새 파이프 라인 예약 화면이 열리고 필드를 채우고 파이프 라인 일정 저장 버튼을 클릭합니다. −
Step 4 − 이제 실행 예정인 파이프 라인이 표시됩니다. −
GitLab과 Kubernetes 클러스터 연결
Kubernetes 클러스터를 사용하여 애플리케이션을 검토 및 배포하고 파이프 라인을 실행하는 등 쉬운 방법으로 사용할 수 있습니다. GitLab 계정을 Google Kubernetes Engine (GKE)과 연결하여 프로젝트에 새 클러스터를 만들 수 있습니다.
새 Kubernetes 클러스터는 아래 단계와 같이 생성 할 수 있습니다.
Step 1 − GitLab 계정에 로그인하고 프로젝트로 이동 −
Step 2− CI / CD 탭 에서 Kubernetes 옵션을 클릭합니다 −
Step 3− 다음으로 Kubernetes 클러스터 추가 버튼을 클릭합니다 −
Step 4− GKE 에서 만들기 버튼을 클릭하여 Google Kubernetes Engine에 새 Kubernetes 클러스터를 만듭니다. −
Step 5 − Google 계정이있는 경우 해당 계정으로 로그인하여 Kubernetes 클러스터에 대한 세부 정보를 입력하거나 새 Google 계정을 만듭니다. −
Step 6 − 이제 Kubernetes 클러스터의 필드에 값을 입력하세요 −
Step 7− 필드에 값을 추가하기 전에 Kubernetes 클러스터를 호스팅하기 위해 Google Cloud Platform 콘솔에서 생성 된 프로젝트의 ID가 필요합니다. ID를 생성하려면 이전 이미지에서 강조 표시된 프로젝트보기 링크를 클릭 하십시오 . 아래 화면이 열리면 내 프로젝트 메뉴를 클릭하고 더하기 (+) 아이콘을 클릭하여 새 프로젝트를 만듭니다.
Step 8− 이제 프로젝트 이름을 입력하고 생성 버튼을 클릭 합니다 −
Step 9 − Kubernetes 클러스터를 호스팅 할 프로젝트의 ID를 받게됩니다. −
Step 10− Google Cloud Platform 프로젝트 ID와 함께 Kubernetes 클러스터의 필드에 값을 입력하고 Create Kubernetes cluster 버튼을 클릭합니다. −