5.4. 파이프라인 빌드
파이프라인 빌드 전략은 OpenShift Container Platform 4에서 더 이상 사용되지 않습니다. 동등하고 향상된 기능은 Tekton 기반 OpenShift Container Platform Pipelines에 있습니다.
OpenShift Container Platform의 Jenkins 이미지는 완전히 지원되며 사용자는 Jenkins 사용 설명서를 따라 작업에 jenkinsfile
을 정의하거나 소스 제어 관리 시스템에 저장해야 합니다.
Pipeline 빌드 전략을 사용하면 개발자가 Jenkins Pipeline 플러그인에서 사용할 Jenkins Pipeline을 정의할 수 있습니다. 다른 빌드 유형과 동일한 방식으로 OpenShift Container Platform에서 빌드를 시작, 모니터링, 관리할 수 있습니다.
파이프라인 워크플로는 빌드 구성에 직접 포함하거나 Git 리포지토리에 제공하는 방식으로 jenkinsfile
에 정의하고 빌드 구성에서 참조합니다.
5.4.1. OpenShift Container Platform 파이프라인 이해
파이프라인 빌드 전략은 OpenShift Container Platform 4에서 더 이상 사용되지 않습니다. 동등하고 향상된 기능은 Tekton 기반 OpenShift Container Platform Pipelines에 있습니다.
OpenShift Container Platform의 Jenkins 이미지는 완전히 지원되며 사용자는 Jenkins 사용 설명서를 따라 작업에 jenkinsfile
을 정의하거나 소스 제어 관리 시스템에 저장해야 합니다.
파이프라인을 사용하면 OpenShift Container Platform에서 애플리케이션의 빌드, 배포, 승격을 제어할 수 있습니다. Jenkins Pipeline 빌드 전략 jenkinsfiles
와 Jenkins 클라이언트 플러그인에서 제공하는 OpenShift Container Platform DSL(Domain Specific Language)을 조합하면 모든 시나리오에 맞는 고급 빌드, 테스트, 배포, 승격 파이프라인을 생성할 수 있습니다.
OpenShift Container Platform Jenkins 동기화 플러그인
OpenShift Container Platform Jenkins 동기화 플러그인은 Jenkins 작업 및 빌드와 동기화된 빌드 구성 및 빌드 오브젝트를 유지하고 다음 기능을 제공합니다.
- Jenkins에서 동적 작업 및 실행 생성
- 이미지 스트림, 이미지 스트림 태그 또는 구성 맵에서 에이전트 Pod 템플릿 동적 생성
- 환경 변수 할당
- OpenShift Container Platform 웹 콘솔의 파이프라인 시각화
- Jenkins Git 플러그인과의 통합으로 OpenShift Container Platform 빌드의 커밋 정보를 Jenkins Git 플러그인으로 전달합니다.
- Jenkins 자격 증명 항목에 시크릿 동기화.
OpenShift Container Platform Jenkins 클라이언트 플러그인
OpenShift Container Platform Jenkins 클라이언트 플러그인은 Jenkins 플러그인 중 하나로, OpenShift Container Platform API 서버와의 다양한 상호 작용을 위해 읽기 쉽고 간결하고 포괄적이며 유창한 Jenkins Pipeline 구문을 제공하기 위한 것입니다. 플러그인은 OpenShift Container Platform 명령줄 툴인 oc
를 사용하는데 스크립트를 실행하는 노드에서 이 툴을 사용할 수 있어야 합니다.
Jenkins 클라이언트 플러그인은 애플리케이션의 jenkinsfile
내에서 OpenShift Container Platform DSL을 사용할 수 있도록 Jenkins 마스터에 설치해야 합니다. 이 플러그인은 OpenShift Container Platform Jenkins 이미지를 사용할 때 기본적으로 설치되고 활성화됩니다.
프로젝트 내 OpenShift Container Platform Pipeline의 경우 Jenkins Pipeline 빌드 전략을 사용해야 합니다. 이 전략에서는 기본적으로 소스 리포지토리의 루트에서 jenkinsfile
을 사용하지만 다음과 같은 구성 옵션을 제공합니다.
-
빌드 구성 내의 인라인
jenkinsfile
필드 -
소스
contextDir
에 상대적으로 사용할jenkinsfile
의 위치를 참조하는, 빌드 구성 내의jenkinsfilePath
필드
선택적 jenkinsfilePath
필드는 소스 contextDir
에 상대적으로 사용할 파일의 이름을 지정합니다. contextDir
이 생략된 경우 기본값은 리포지토리의 루트입니다. jenkinsfilePath
가 생략된 경우 기본값은 jenkinsfile
입니다.