하나의 접근법은 Locks and Latches 플러그인을 사용하고 각 파이프 라인의 각 작업에 Lock eg Pipeline-A와 Pipeline-B를 제공하면 테스트를 실행하는 작업이 Pipeline- A와 파이프 라인 -B. 이렇게하면 파이프 라인의 일부가 실행중인 경우 테스트 작업이 실행되지 않으며 테스트가 실행되는 동안 파이프 라인의 변경 사항이 차단됩니다.
배포 작업을 잠그고 싶다면 동일한 접근법을 사용할 수 있지만 잠금으로 배포 작업 만 구성하면됩니다. 이렇게하면 일반 빌드가 정상적으로 실행될 수 있지만 배포 작업은 테스트가 실행되는 동안 큐에 대기하게됩니다.
가정;
- 모든 배포 작업는 두 번째 접근 방식은 배포를 수행하기 전에 다음과 같은 레이아웃에서 단일 작업을 트리거하도록 작업 파이프 라인 설정을하는 것입니다
테스트 실행을 트리거된다 배포가 모두 완료하고 성공하는 경우
EndOfPipelineA -> SystemDeploymentController
EndOfPipelineB -> SystemDeploymentController
SystemDeploymentController -> DeployAppOne
SystemDeploymentController -> DeployAppTwo
DeployAppTwo -> TestExecution
DeployAppOne -> TestExecution
그런 다음 당신은 단지 TestExecution 작업을 실행하기 위해
Join 플러그인을 사용합니다.
당신이 경우 전체 시스템을 다시 배포 할 수 있습니다 하나의 직업을 가지고,
- 조건부 구축의 성공 여부에 따라 테스트 실행의 실행을 제어 :
두 번째 방법을 사용하면 다음을 할 수 있습니다 실행중인 시스템을 변경 한 다음 테스트를 자동으로 실행합니다. 이 관리 조금 까다 롭습니다하지만 모두 애플 리케이션이 함께 잘
을 일했던
는 잠재적으로 "좋은 구성"을 강조 플러그인 프로모션을 사용한다. 이 오래된 질문이지만
잠금 및 래치 플러그인의 올바른 URL은 다음과 같습니다. https://wiki.jenkins-ci.org/display/JENKINS/Locks+and+Latches+plugin –
감사합니다. 수정 된 설명으로 업데이트했습니다. . –