32장. 파이프라인 실행 구성
32.1. 개요
사용자가 Pipeline 빌드 전략을 사용하여 빌드 구성을 처음 생성할 때 OpenShift Container Platform은 openshift
네임스페이스에서 jenkins-ephemeral
이라는 템플릿을 찾아 사용자 프로젝트 내에서 인스턴스화합니다. OpenShift Container Platform과 함께 제공되는 jenkins-ephemeral
템플릿은 인스턴스화 시 생성됩니다.
- 공식 OpenShift Container Platform Jenkins 이미지를 사용하는 Jenkins에 대한 배포 구성
- Jenkins 배포에 액세스하기 위한 서비스 및 경로
- 새 Jenkins 서비스 계정
- 프로젝트에 대한 서비스 계정 편집 액세스 권한을 부여하는 역할 바인딩
클러스터 관리자는 기본 제공 템플릿의 콘텐츠를 수정하거나 클러스터를 다른 템플릿 위치로 보내 클러스터 구성을 편집하여 생성되는 항목을 제어할 수 있습니다.
기본 템플릿의 내용을 수정하려면 다음을 수행합니다.
$ oc edit template jenkins-ephemeral -n openshift
Jenkins에 영구 스토리지를 사용하는 jenkins-persistent
템플릿과 같은 다른 템플릿을 사용하려면 마스터 구성 파일에 다음을 추가합니다.
jenkinsPipelineConfig: autoProvisionEnabled: true 1 templateNamespace: openshift 2 templateName: jenkins-persistent 3 serviceName: jenkins-persistent-svc 4 parameters: 5 key1: value1 key2: value2
파이프라인 빌드 구성이 생성되면 OpenShift Container Platform은 Service Name과 일치하는 서비스를
찾습니다. 즉, 프로젝트에서 고유하도록 serviceName
을 선택해야 합니다. 서비스를 찾을 수 없는 경우 OpenShift Container Platform은 jenkinsPipelineConfig
템플릿을 인스턴스화합니다. 이 기능이 바람직하지 않은 경우(예: OpenShift Container Platform 외부에서 Jenkins 서버를 사용하려는 경우) 본인에 따라 몇 가지 작업을 수행할 수 있습니다.
-
클러스터 관리자인 경우
autoProvisionEnabled
를false
로 설정하면 됩니다. 그러면 클러스터에서 자동 프로비저닝이 비활성화됩니다. -
권한이 없는 사용자인 경우 OpenShift Container Platform이 사용할 서비스를 생성해야 합니다. 서비스 이름은
jenkinsPipelineConfig
의serviceName
클러스터 구성 값과 일치해야 합니다. 기본값은jenkins
입니다. 프로젝트 외부에서 Jenkins 서버를 실행 중이므로 자동 프로비저닝을 비활성화하는 경우 이 새 서비스를 기존 Jenkins 서버를 가리키는 것이 좋습니다. 다음 내용을 참조하십시오. 외부 서비스 통합
후자의 옵션을 사용하여 선택한 프로젝트에서만 자동 프로비저닝을 비활성화할 수도 있습니다.