개발자는 GitHub 또는 GitLab Enterprise 저장소의 코드를 지속적으로 통합할 수 있습니다. 개발자가 코드를 업데이트하고 저장소 변경 내용을 커밋할 때마다 VMware Code Stream은 그러한 변경 내용을 수신하고 파이프라인을 트리거할 수 있습니다.

코드 체크인에서 Kubernetes 클러스터의 배포된 애플리케이션까지의 워크플로에는 GitHub, Code Stream, Docker Hub, Git에 대한 트리거 및 Kubernetes를 사용할 수 있습니다.

VMware Code Stream이 코드 변경 시 파이프라인을 트리거하도록 하려면 Git 트리거를 사용합니다. 그러면 VMware Code Stream은 코드에 대한 변경 내용을 커밋할 때마다 파이프라인을 트리거합니다.

코드를 구축하기 위해 Docker 호스트를 사용합니다. 테스트 프레임워크 툴로 유닛 테스트와 코드 범위를 실행하는 JUnit 및 JaCoCo를 사용합니다. 이러한 툴을 파이프라인에 포함합니다.

그러면 코드를 구축 및 테스트하고 AWS에 있는 프로젝트 팀 Kubernetes 클러스터에 배포하는 CI(연속 통합) 파이프라인을 생성하는 CI 스마트 파이프라인 템플릿을 사용할 수 있습니다. CI(지속적 통합) 작업에 대한 코드 종속성 아티팩트를 저장하여 코드 구축 시 시간을 절약하려면 캐시를 사용하면 됩니다.

코드를 구축하고 테스트하는 파이프라인 작업에서, 몇 가지의 지속적 통합 단계를 포함할 수 있습니다. 이러한 단계는 파이프라인이 트리거될 때 Code Stream이 소스 코드를 복제하는 동일한 작업 디렉토리에 상주할 수 있습니다.

코드를 Kubernetes 클러스터에 배포하기 위해 파이프라인에서 Kubernetes 작업을 사용할 수 있습니다. 그런 다음 파이프라인을 사용하도록 설정하고 실행해야 합니다. 그런 다음 저장소에서 코드를 변경하고 파이프라인 트리거를 확인합니다. 파이프라인을 실행한 후 파이프라인 추세를 모니터링하고 보고하려면 대시보드를 사용합니다.

다음 순서도는 스마트 파이프라인 템플릿을 사용하여 파이프라인을 생성하거나 수동으로 파이프라인을 구축하는 경우 수행할 수 있는 워크플로를 보여줍니다.

그림 1. 스마트 파이프라인 템플릿을 사용하거나 수동으로 파이프라인을 생성하는 워크플로
이 워크플로는 연속 통합 파이프라인을 사용하여 연속적으로 코드를 통합하는 프로세스를 통해 경로를 결정하는 데 유용합니다.

다음 예에서는 코드를 파이프라인에 지속적으로 통합하는 지속적 통합 파이프라인을 생성하기 위해 지속적 통합 스마트 파이프라인 템플릿을 사용합니다.

필요한 경우 파이프라인을 수동으로 생성하고 여기에 단계 및 작업을 추가할 수 있습니다. 지속적인 통합 구축을 계획하고 파이프라인을 수동으로 생성하는 방법에 대한 자세한 내용은 작업을 수동으로 추가하기 전에 Code Stream에서 CICD 네이티브 빌드 계획 항목을 참조하십시오.

사전 요구 사항

  • 지속적인 통합 구축을 계획합니다. 스마트 파이프라인 템플릿을 사용하기 전에 VMware Code Stream에서 CI 네이티브 빌드 계획 항목을 참조하십시오.
  • GitLab 소스 코드 저장소가 있는지 확인합니다. 도움이 필요하면 VMware Code Stream 관리자에게 문의하십시오.
  • Git 끝점을 추가합니다. 예를 보려면 Code Stream에서 Git 트리거를 사용하여 파이프라인을 실행하는 방법 항목을 참조하십시오.
  • VMware Code Stream이 GitHub 저장소나 GitLab 저장소의 변경 내용을 수신 대기하다가 변경이 발생할 때 파이프라인을 트리거하도록 하려면 Webhook을 추가합니다. 예를 보려면 Code Stream에서 Git 트리거를 사용하여 파이프라인을 실행하는 방법 항목을 참조하십시오.
  • 여러 지속적 통합 작업에서 사용할 수 있는 CI(지속적 통합) 작업에 대한 컨테이너가 생성하는 Docker 호스트 끝점을 추가합니다. 끝점에 대한 자세한 내용은 Code Stream의 끝점 소개 항목을 참조하십시오.
  • 이미지 URL, 빌드 호스트 및 빌드 이미지의 URL을 확보합니다. 도움이 필요하면 VMware Code Stream 관리자에게 문의하십시오.
  • 테스트 프레임워크 툴로 JUnit 및 JaCoCo를 사용 중인지 확인합니다.
  • 지속적 통합 구축을 위한 외부 인스턴스(Jenkins, TFS 또는 Bamboo)를 설정합니다. Kubernetes 플러그인이 코드를 배포합니다. 도움이 필요하면 VMware Code Stream 관리자에게 문의하십시오.

프로시저

  1. 사전 요구 사항을 따릅니다.
  2. 스마트 파이프라인 템플릿을 사용하여 파이프라인을 생성하려면 지속적인 통합 스마트 파이프라인 템플릿을 열고 양식을 채웁니다.
    1. 파이프라인 > 새 파이프라인 > 스마트 템플릿 > 지속적 통합을 클릭합니다.
    2. 소스 코드 저장소, 구축 툴셋, 게시 툴 및 구축 이미지 업무 공간에 대한 템플릿의 질문에 답합니다.
    3. 팀에 대한 Slack 또는 이메일 알림을 추가합니다.
    4. 스마트 파이프라인 템플릿이 파이프라인을 생성하도록 하려면 생성을 클릭합니다.
    5. 파이프라인을 추가로 변경하려면 편집을 클릭하고 내용을 변경한 다음 저장을 클릭합니다.
    6. 파이프라인을 사용하도록 설정하고 실행합니다.
  3. 파이프라인을 수동으로 생성하려면 캔버스에 단계 및 작업을 추가하고 지속적 통합 작업에 지속적 통합 기본 빌드 정보를 포함합니다.
    1. 파이프라인 > 새 파이프라인 > 빈 캔버스를 클릭합니다.
    2. 단계를 클릭한 다음 몇 가지 지속적 통합 작업을 탐색 창에서 단계로 끌어옵니다.
    3. 지속적 통합 작업을 구성하려면 클릭하고 작업 탭을 클릭합니다.
    4. 코드를 지속적으로 통합하는 단계를 추가합니다.
    5. 종속성 아티팩트 경로를 포함합니다.
    6. 내보내기 위치를 추가합니다.
    7. 사용할 테스트 프레임워크 툴을 추가합니다.
    8. Docker 호스트 및 구축 이미지를 추가합니다.
    9. 컨테이너 레지스트리, 작업 디렉토리 및 캐시를 추가합니다.
    10. 파이프라인을 저장한 다음 사용하도록 설정합니다.
  4. GitHub 또는 GitLab 저장소에서 코드를 변경합니다.
    Git 트리거는 실행을 시작하는 파이프라인을 활성화합니다.
  5. 코드 변경으로 인한 파이프라인 트리거를 확인하려면 트리거 > Git > 작업을 클릭합니다.
  6. 파이프라인의 실행을 보려면 실행을 클릭하고 단계에서 빌드 이미지를 생성하고 내보냈는지 확인합니다.
    파이프라인 실행에는 보존된 아티팩트의 경로와 내보낸 이미지의 값이 표시됩니다.
  7. KPI 및 추세를 추적할 수 있도록 파이프라인 대시보드를 모니터링하려면 대시보드 > 파이프라인 대시보드를 클릭합니다.

결과

축하합니다! GitHub 또는 GitLab 저장소의 코드를 파이프라인에 지속적으로 통합하고 구축 이미지를 배포하는 파이프라인을 생성했습니다.

다음에 수행할 작업

자세한 내용을 보려면 VMware Code Stream 관리자 및 개발자를 위한 추가 리소스 항목을 참조하십시오.