Code Stream 관리자는 조직 내의 사용자가 다른 프로젝트에서 파이프라인을 실행하거나 다른 프로젝트의 파이프라인 내에서 중첩된 작업으로 추가할 수 있도록 파이프라인을 공유할 수 있습니다.

공유 파이프라인이 유용한 이유

파이프라인을 공유하면 조직 내 다른 프로젝트에 대해 동일한 파이프라인을 생성할 필요가 없습니다. 공유 파이프라인을 업데이트하면 모든 파이프라인 사용자가 동일한 업데이트를 갖게 됩니다.

공유 파이프라인은 Service Broker에서도 사용할 수 있습니다. Service Broker 관리자는 공유 파이프라인을 카탈로그 항목으로 추가하여 사용자가 여러 프로젝트에서 요청하고 실행하도록 할 수 있습니다.

Code Stream 관리자만 파이프라인을 공유하거나 공유를 중지할 수 있습니다.

파이프라인을 공유하는 방법

파이프라인을 공유하려면 파이프라인을 클릭하고 공유할 파이프라인을 선택합니다.

  1. 작업 > 프로젝트 간에 공유를 클릭합니다.
  2. 파이프라인이 비활성화된 경우 작업 > 사용을 클릭합니다.
  3. (선택 사항) 공유 파이프라인을 Service Broker에서 사용할 수 있도록 하려면 작업 > 릴리스를 클릭합니다.

    파이프라인을 릴리스한 후 Service Broker 관리자가 파이프라인을 Service Broker에 추가할 수 있습니다. Service Broker 카탈로그에 Code Stream 파이프라인 추가를 참조하십시오.

공유 파이프라인을 실행하는 방법

공유 파이프라인을 실행하려면 파이프라인을 선택하고 프로젝트를 선택합니다.

파이프라인은 선택한 프로젝트의 컨텍스트에서 실행되며 파이프라인 모델만 공유됩니다. 파이프라인에서 사용되는 끝점 또는 변수와 같은 인프라는 공유되지 않습니다. 끝점 또는 변수를 사용하는 공유 파이프라인이 다른 프로젝트에서 실행되는 경우에는 해당 끝점 및 변수를 해당 프로젝트에서 사용할 수 있어야 합니다.

예를 들어 jenkinsPipeline에서 projectA를 사용하고 jenkinsEndpoint라는 끝점이 있는 작업을 포함한다고 가정합니다.

공유 파이프라인을 실행하려면 우선 파이프라인에 다른 프로젝트에서 파이프라인을 실행하는 데 필요한 컨텐츠가 포함되어 있는지 확인합니다.

jenkinsPipeline을 공유하여 projectB 컨텍스트에서 실행하려면 projectBjenkinsEndpoint가 있어야 합니다. jenkinsEndpoint가 없으면 공유 파이프라인을 실행하기 전에 projectB에서 해당 끝점을 생성합니다.

다음 절차는 다른 프로젝트에서 끝점을 복제하는 방법을 보여줍니다. 변수에 대해 유사한 단계를 수행합니다.

  1. 끝점을 클릭합니다. 복제하려는 끝점(예: jenkinsEndpoint)에서 작업 > 내보내기를 클릭합니다.
  2. 가져오기 버튼을 클릭하고 jenkinsEndpoint용 YAML 파일을 선택합니다.
  3. 파일을 편집하여 프로젝트를 변경합니다(예를 들어 다음 샘플 YAML 코드의 projectB).
    ---
    project: projectB
    kind: ENDPOINT
    name: jenkinsEndpoint
    ...
  4. 가져오기를 클릭합니다.

projectB에서 jenkinsPipeline을 실행하려면 파이프라인 카드에서 실행을 클릭하고 projectB를 프로젝트로 선택합니다.

참고: projectB에서 공유 파이프라인을 실행하려면 관리자, 개발자 또는 실행자의 Code Stream 역할이 있어야 합니다. Code Stream 뷰어 또는 사용자인 경우 Code Stream 관리자가 projectB의 프로젝트 관리자 또는 프로젝트 멤버로 지정하지 않는 한 파이프라인을 실행할 수 없습니다. Code Stream의 역할에 대한 자세한 내용은 Code Stream에서 사용자 액세스 및 승인을 관리하는 방법 항목을 참조하십시오.

공유 파이프라인을 다른 파이프라인에 추가하는 방법

공유 파이프라인을 다른 파이프라인 내에서 중첩된 작업으로 사용하면 하나의 프로젝트에 포함된 파이프라인 이상으로 파이프라인 기능을 확장할 수 있습니다. 공유 파이프라인은 서로 다른 프로젝트에 있을 수 있으며 중첩된 작업으로 포함된 파이프라인과 다른 프로젝트에 있을 수 있습니다.

다음 예는 두 개의 중첩된 파이프라인 작업이 있는 master-shared-pipeline-demo라는 파이프라인을 보여줍니다.

중첩된 공유 파이프라인으로 파이프라인을 생성하는 경우 공유 파이프라인을 선택하고 이름이 같은 파이프라인이 두 개 있는 경우 프로젝트 이름을 사용하여 원하는 파이프라인을 선택합니다.

Task0에 대한 파이프라인을 지정하려면 공유 파이프라인 목록에서 선택합니다. 모든 파이프라인 이름에는 프로젝트 이름이 포함됩니다. 여러 공유 파이프라인의 이름이 같으면 프로젝트 이름을 사용하여 원하는 파이프라인을 선택할 수 있습니다.

참고: 중첩된 파이프라인이 포함된 파이프라인을 실행하려면 중첩된 파이프라인에서 사용되는 모든 끝점 또는 변수에 파이프라인이 액세스할 수 있어야 합니다. 그럴 수 없으면 파이프라인에 대한 프로젝트의 컨텐츠를 생성해야 합니다.

롤백에 공유 파이프라인을 사용하는 방법

롤백에 공유 파이프라인을 사용하려면 작업에 대한 롤백을 구성할 때 파이프라인 목록에서 공유 파이프라인을 선택합니다. Code Stream은 동일한 프로젝트의 파이프라인 또는 다른 프로젝트의 공유 파이프라인만 표시하도록 목록을 필터링합니다.

롤백을 위한 공유 파이프라인을 추가하는 경우 공유 파이프라인을 선택하고 이름이 같은 파이프라인이 두 개 있는 경우 프로젝트 이름을 사용하여 원하는 파이프라인을 선택합니다.

파이프라인에서 공유 VMware 클라우드 템플릿을 사용하는 방법

공유 VMware 클라우드 템플릿을 파이프라인의 작업에 대한 클라우드 템플릿 소스로 사용할 수 있습니다. 공유 클라우드 템플릿을 사용하면 하나의 프로젝트에 포함된 것보다 더 많은 클라우드 템플릿에 액세스할 수 있습니다.

Code Stream에서 작업을 정의하기 전에 클라우드 템플릿이 Cloud Assembly에서 공유되어 있고 이름과 버전을 알고 있는지 확인합니다. 클라우드 템플릿이 공유되어 있으면 프로젝트 이름 옆의 아이콘이 클라우드 템플릿 목록에 나타납니다.

공유 클라우드 템플릿을 파이프라인에 소스로 추가하려면 먼저 VMware 클라우드 템플릿이 Cloud Assembly에서 공유되어 있는지 확인합니다.

공유 파이프라인에서 VMware 클라우드 템플릿을 사용하려면 다음을 수행합니다.
  • 작업 유형에서 VMware 클라우드 템플릿을 선택합니다.
  • 작업에서 배포 생성 또는 배포 업데이트를 선택합니다.
  • 배포를 업데이트하는 경우 배포 이름을 선택합니다.
  • 클라우드 템플릿 소스로 VMware 클라우드 템플릿을 선택합니다.
  • 클라우드 템플릿 이름의 경우 클라우드 템플릿 목록에서 선택하거나 이름을 입력합니다. 클라우드 템플릿이 나열되지 않는다면, 클라우드 템플릿이 파이프라인과 다른 프로젝트에 있고 Code Stream에는 동일한 프로젝트에 있는 클라우드 템플릿만 나열되기 때문입니다.
  • 클라우드 템플릿 버전에 클라우드 템플릿의 버전을 입력합니다.

다음 예에서 shared-bpCloud Assembly에서 확인했으며 사용하려는 공유 VMware클라우드 템플릿이지만 선택 항목으로 나열되지 않으므로 이름을 입력합니다.

공유 클라우드 템플릿으로 작업을 정의할 때는 클라우드 템플릿이 Cloud Assembly에서 공유되는지 확인한 다음 Code Stream에 이름과 버전을 입력합니다.
참고: 지정한 VMware 클라우드 템플릿이 공유되어 있지 않은데 다른 프로젝트의 파이프라인에서 사용하려고 하면 파이프라인이 실행되지 못하고 선택한 클라우드 템플릿이 공유되어 있지 않다는 메시지가 표시됩니다.

파이프라인 공유를 삭제하거나 중지하는 방법

공유 파이프라인을 중첩된 작업으로 추가하거나 작업을 롤백하기 위해 추가하면 해당 파이프라인은 사용되는 파이프라인에서 참조됩니다. 파이프라인 공유를 삭제하거나 중지하려면 파이프라인을 참조하는 모든 파이프라인에서 제거해야 합니다.

예를 들어 master-shared-pipeline-demoShared-Pipeline이 중첩된 작업으로 포함되어 있으면 Shared-Pipeline이 참조됩니다. master-shared-pipeline-demo에서 Shared-Pipeline을 제거할 때까지는 해당 파이프라인의 공유를 삭제하거나 중지할 수 없습니다.

또는 TestRollbackShared-Pipeline을 사용하여 작업을 롤백하면 Shared-Pipeline이 참조됩니다. TestRollback의 작업에 대한 롤백에서 제거할 때까지는 Shared-Pipeline을 삭제하거나 공유를 중지할 수 없습니다.

다음 절차는 파이프라인 공유를 삭제하거나 중지하기 전에 파이프라인의 참조를 확인하고 이 파이프라인을 참조하는 파이프라인에서 제거하는 방법을 보여줍니다.

  1. 참조가 있는지 확인한 후 있으면 파이프라인 참조를 업데이트합니다.
    1. 파이프라인을 클릭합니다. 확인하려는 공유 파이프라인에서 작업 > 참조 보기를 클릭합니다.
    2. 참조된 파이프라인의 이름을 기록해 둡니다.공유 파이프라인을 제거하기 전에 중첩된 파이프라인으로 사용되는지 또는 다른 파이프라인에서 롤백하는 데 사용되는지 확인합니다.
    3. 공유 파이프라인을 참조하는 파이프라인을 엽니다. 중첩된 작업으로 사용되거나 작업을 롤백하는 데 사용되는 공유 파이프라인을 제거하고 파이프라인을 저장합니다.
  2. 파이프라인 공유를 삭제하거나 중지합니다.
    • 삭제하려는 파이프라인에서 작업 > 삭제를 클릭합니다.
    • 공유를 중지하려는 파이프라인에서 작업 > 공유 중지를 클릭합니다.