This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.3.5.3. Jenkins를 사용하여 반복 가능한 승격 프로세스
OpenShift Container Platform의 Jenkins Docker 이미지에 정의된 OpenShift 샘플 작업은 Jenkins 구문에서 OpenShift Container Platform 내의 이미지 승격 예제입니다. 이 샘플의 설정은 OpenShift Origin 소스 리포지토리에 있습니다.
이 샘플에는 다음이 포함됩니다.
- Jenkins를 CI/CD 엔진으로 사용합니다.
-
Jenkins용 OpenShift Pipeline 플러그인을 사용합니다. 이 플러그인은 Jenkins Freestyle 및 DSL 작업 단계로 패키지된 OpenShift Container Platform용
ocCLI에서 제공하는 기능의 하위 집합을 제공합니다.oc바이너리는 OpenShift Container Platform의 Jenkins Docker 이미지에도 포함되며 Jenkins 작업의 OpenShift Container Platform과 상호 작용하는 데도 사용할 수 있습니다. - Jenkins에 대한 OpenShift Container Platform 제공 템플릿입니다. 임시 스토리지 및 영구 스토리지용 템플릿이 있습니다.
-
샘플 애플리케이션: OpenShift Origin 소스 리포지토리에 정의된 이 애플리케이션은
ImageStreams,ImageChangeTriggers,ImageStreamTags,BuildConfigs, 및 승격 파이프라인의 다른 단계에 해당하는 별도의DeploymentConfigs및Services를 활용합니다.
다음은 OpenShift 샘플 작업의 다양한 부분을 자세히 검사합니다.
-
첫 번째 단계는
oc scale dc frontend --replicas=0호출과 동일합니다. 이 단계는 실행 중일 수 있는 이전 버전의 애플리케이션 이미지를 중단하기 위한 것입니다. -
두 번째 단계는
oc start-build frontend호출과 동일합니다. -
세 번째 단계는
oc rollout latest dc/frontend호출과 동일합니다. - 네 번째 단계는 이 샘플의 '테스트'입니다. 이를 통해 이 애플리케이션의 연결된 서비스가 네트워크 관점에서 실제로 액세스할 수 있습니다. 커버에서 소켓 연결은 OpenShift Container Platform 서비스와 연결된 IP 주소 및 포트에 대해 시도됩니다. 물론 OpenShift Pipepline 플러그인 단계를 통해 추가 테스트를 추가한 다음 Jenkins Shell 단계를 통해 OS 수준 명령 및 스크립트를 활용하여 애플리케이션을 테스트할 수 있습니다.
-
다섯 번째 단계는 애플리케이션 테스트가 통과되어 이미지를 "사용 가능"으로 표시하려는 가정 하에 시작됩니다. 이 단계에서는 최신 이미지에서 애플리케이션 이미지에 대한 새 prod 태그가 생성됩니다. 해당 태그에 대해 frontend
DeploymentConfig에ImageChangeTrigger가 정의되어 있으면 해당 "production" 배포가 시작됩니다. - 마지막 단계는 플러그인에서 "프로덕션" 배포에 대해 원하는 수의 복제본 수를 시작했음을 확인하는 확인 단계입니다.