jenkins(1.583)에서 Job 구성시 Build 섹션에서 MultiJob Phase 에서 여러 job을 추가할 수 있다.
만약 Multijob 실행 중 하나에서 문제가 발생하면, job에서는 다음과 같은 에러가 발생하고, 더 이상 job 실행이 되지 않는다.
<문제 발생한 job 로그>
Build step 'Execute shell' marked build as failure
Finished: FAILURE
<문제 job 때문에 같이 에러가 발생하는 job 로그>
Aborted by anonymous
jenkins Finished: ABORTED
이 문제를 해결하는 과정을 공유한다.
- Job의 Kill the Phase on 옵션에 Never 를 선택한다.
- Abort all other job이 실행되지 않도록 한다.
이렇게 설정해도 문제가 발생할 수 있다.
그럴 때는 장비에 접근해서 자바 데몬(slave)이 잘 떠 있는지 확인한다.
보니, slave 데몬이 동시에 두 개가 떠 있다면, 문제 해결의 실마리가 있는 지 확인할 수 있다.
$ ps -ef | grep java
www 11282 11227 0 19:10 pts/0 00:00:00 grep --color=auto java
www 24960 24711 0 16:47 ? 00:00:00 bash -c cd "/var/lib/jenkins" && java -jar slave.jar
www 24961 24710 0 16:47 ? 00:00:00 bash -c cd "/var/lib/jenkins" && java -jar slave.jar
www 25002 24960 0 16:47 ? 00:00:31 java -jar slave.jar
www 25003 24961 0 16:47 ? 00:00:36 java -jar slave.jar
아마도 장비 설정을 잘못한 경우이다.
- jenkins 노드 설정시, 한번 slave agent를 실행한 상태라면, 기존 장비로 연결되어 있다. 따라서, '연결끊기'를 한후, 다시 '연결' 버튼을 누르고, launch slave agent 버튼을 클릭하여 jenkins slave 데몬이 정상적으로 실행될 수 있다.
Multi job을 실행하는 장비에서 slave데몬이 아래처럼 필요한 데몬만 뜨도록 설정되어 있는지 ps 명령어로 확인한다.
$ ps -ef | grep java
deploy 12347 12225 0 19:22 ? 00:00:00 bash -c cd "/var/lib/jenkins" && java -jar slave.jar
deploy 12368 12347 8 19:22 ? 00:00:05 java -jar slave.jar
deploy 12985 4801 0 19:23 pts/0 00:00:00 grep --color=auto java
이제 더 이상 aborted 에러 메시지를 발생하지 않는다.
'general java' 카테고리의 다른 글
[jenkins] 사용할 수 있는 jenkins 환경 변수 (0) | 2016.08.20 |
---|---|
[jenkins] Waiting for next available executor 해결하기 (0) | 2016.08.11 |
[play] play1 framework에서 test 실행하기 (0) | 2016.07.29 |
org.apache.commons.lang.math.NumberUtils 메소드 (0) | 2016.07.28 |
[spring] Spring Utis의 ReflectionUtils 사용 예제 (0) | 2016.07.13 |