Code Stream은 소스 코드를 구축하고 테스트하는 Jenkins 작업을 트리거하는 Jenkins 플러그인을 제공합니다. Jenkins 플러그인은 테스트 사례를 실행하며, 사용자 지정 스크립트를 사용할 수 있습니다.

파이프라인에서 Jenkins 작업을 실행하려면 온-프레미스 또는 클라우드 기반 Jenkins 서버를 사용하고 Code Stream에서 Jenkins 끝점을 추가합니다. 그런 다음 파이프라인을 생성하고 여기에 Jenkins 작업을 추가합니다.

Code Stream에서 Jenkins 작업 및 Jenkins 끝점을 사용하는 경우 Jenkins에서 다중 분기 작업을 지원하는 파이프라인을 생성할 수 있습니다. 다중 분기 작업은 Git 저장소의 각 분기에 있는 개별 작업을 포함합니다. 다중 분기 작업을 지원하는 파이프라인을 Code Stream에서 생성하는 경우:

  • Jenkins 작업은 Jenkins 서버의 여러 폴더에 상주하는 Jenkins 작업을 실행할 수 있습니다.
  • Jenkins 작업 구성의 폴더 경로를 재정의하여 다른 폴더 경로를 사용하게 할 수 있습니다. 이 경로는 Code Stream의 Jenkins 끝점에 정의된 기본 경로를 재정의합니다.
  • Code Stream의 다중 분기 파이프라인은 Git 저장소 또는 GitHub 저장소에서 .groovy 유형의 Jenkins 작업 파일을 감지하고 저장소에서 검색하는 각 분기에 대한 작업 생성을 시작합니다.
  • Jenkins 작업 구성에 제공된 경로로 Jenkins 끝점에 정의된 기본 경로를 재정의하고, 기본 Jenkins 작업 내 모든 분기와 연결된 작업 및 파이프라인을 실행할 수 있습니다.

사전 요구 사항

  • 버전 1.561 이상을 실행하는 Jenkins 서버를 설정합니다. 서버는 온-프레미스 또는 클라우드 기반일 수 있습니다.
  • 온-프레미스에서 Jenkins 서버를 사용하는 경우 클라우드 프록시를 추가할 수 있는 VMware Cloud Assembly에 액세스할 수 있는지 확인합니다. 예를 보려면 VMware Code Stream을 설정하여 릴리스 프로세스 모델링 항목을 참조하십시오.
  • Code Stream에서 프로젝트의 멤버인지 확인합니다. 멤버가 아니면 프로젝트 멤버로 추가해 달라고 Code Stream 관리자에게 요청합니다. VMware Code Stream에서 프로젝트를 추가하는 방법의 내용을 참조하십시오.
  • 파이프라인 작업에서 실행할 수 있도록 Jenkins 서버에 작업이 있는지 확인합니다.

프로시저

  1. Jenkins 끝점을 추가하고 검증합니다.
    1. 끝점 > 새 끝점을 클릭합니다.
    2. 프로젝트를 선택하고 끝점의 유형으로 Jenkins를 선택합니다. 그런 다음 이름과 설명을 입력합니다.
    3. 이 끝점이 인프라에서 비즈니스에 중요한 구성 요소인 경우 제한된 리소스로 표시를 사용하도록 설정합니다.
    4. 이 끝점이 온-프레미스에 있는 경우 끝점을 Code Stream에 연결하는 클라우드 프록시를 선택합니다.
    5. Jenkins 서버의 URL을 입력합니다.
    6. Jenkins 서버 로그인을 위한 사용자 이름과 암호를 입력합니다. 그런 다음 나머지 정보를 입력합니다.
      표 1. Jenkins 끝점에 대한 나머지 정보
      끝점 항목 설명
      폴더 경로 작업을 그룹화하는 폴더에 대한 경로입니다. Jenkins는 해당 폴더에 있는 모든 작업을 실행할 수 있습니다. 하위 폴더를 생성할 수 있습니다. 예를 들면 다음과 같습니다.
      • folder_1job_1을 포함할 수 있습니다.
      • folder_1job_2를 포함할 수 있는 folder_2를 포함할 수 있습니다.

      folder_1에 대한 끝점을 생성할 때 폴더 경로는 job/folder_1이고, 끝점은 job_1만 나열합니다.

      하위 폴더 folder_2에 있는 작업의 목록을 얻으려면 폴더 경로를 /job/folder_1/job/folder_2/로 사용하는 다른 끝점을 생성해야 합니다.

      다중 분기 Jenkins 작업의 폴더 경로 다중 분기 Jenkins 작업을 지원하려면 Jenkins 작업에서 Jenkins 서버 URL 및 전체 작업 경로를 포함하는 전체 경로를 입력합니다. Jenkins 작업에 폴더 경로를 포함하면 이 경로가 Jenkins 끝점에 나타나는 경로를 재정의합니다. Jenkins 작업의 사용자 지정 폴더 경로를 사용하면 Code Stream은 이 폴더에 있는 작업만 표시합니다.
      • 예: https://server.yourcompany.com/job/project
      • 파이프라인에서 기본 Jenkins 작업도 트리거해야 하는 경우 https://server.yourcompany.com/job/project/job/main을 사용합니다.
      URL Jenkins 서버의 호스트 URL입니다. URL을 protocol://host:port 형식으로 입력합니다. 예: http://192.10.121.13:8080
      폴링 간격 Code Stream이 업데이트를 위해 Jenkins 서버를 폴링하는 간격입니다.
      요청 재시도 횟수 Jenkins 서버에 대해 예약된 구축 요청을 재시도하는 횟수입니다.
      재시도 대기 시간 Jenkins 서버에 대한 구축 요청을 재시도하기 전에 대기하는 시간(초)입니다.
    7. 검증을 클릭하고 끝점이 Code Stream에 연결되는지 확인합니다. 연결되지 않으면 오류를 수정한 다음 저장을 클릭합니다.
      코드를 빌드하고 테스트하는 Jenkins 끝점에는 URL이 필요하며 선택한 특정 클라우드 프록시가 사용됩니다.
  2. 코드를 구축하려면 파이프라인을 생성하고 Jenkins 끝점을 사용하는 작업을 추가합니다.
    1. 파이프라인 > 새 파이프라인 > 빈 캔버스를 클릭합니다.
    2. 기본 단계를 클릭합니다.
    3. [작업] 영역에서 작업의 이름을 입력합니다.
    4. 작업 유형을 Jenkins로 선택합니다.
    5. 생성한 Jenkins 끝점을 선택합니다.
    6. 드롭다운 메뉴에서 파이프라인이 실행할 Jenkins 서버의 작업을 선택합니다.
    7. 작업에 대한 매개 변수를 입력합니다.
    Jenkins 끝점을 사용하는 Jenkins 작업을 구성할 때 Jenkins 작업을 선택하고 값을 추가합니다.
  3. 파이프라인을 사용하도록 설정하고 실행한 후 파이프라인 실행을 살펴봅니다.
    Jenkins 작업에 대한 파이프라인 실행은 작업 ID, 작업 URL, 작업 결과의 키 및 값을 포함한 Jenkins 작업 세부 정보를 표시합니다.
  4. 파이프라인 대시보드에서 실행 세부 정보 및 상태를 살펴봅니다.
    모든 실패와 실패의 원인을 식별할 수 있습니다. 또한 파이프라인 실행 기간, 완료 및 실패에 대한 추세를 볼 수도 있습니다.
    파이프라인 대시보드에는 파이프라인 실행 수와 기간 및 각 실행의 상태와 같은 파이프라인 실행에 대한 세부 정보가 표시됩니다.

결과

축하합니다! 끝점을 추가하고, 파이프라인을 생성하고, 코드를 구축하는 Jenkins 작업을 구성하여 Code Stream과 Jenkins를 통합했습니다.

예: Jenkins 구축 작업을 위한 YAML 예

이 예에 사용된 Jenkins 구축 작업 유형의 경우 YAML은 다음 코드와 유사합니다(알림이 설정되어 있음).

test:
  type: Jenkins
  endpoints:
    jenkinsServer: jenkins
  input:
    job: Add two numbers
    parameters:
      Num1: '23'
      Num2: '23'

다음에 수행할 작업

자세한 내용을 보려면 다른 섹션을 검토합니다. 끝점에 VMware Code Stream 연결 항목을 참조하십시오.