만약 저와 똑같이 젠킨스 허접이라면

 

'왜 내가 jenkins로 올린 톰캣(startup.sh)이 쉘로 잘 작동했는데 jenkins job이 끝나면 왜 서버가 안올라가있을까?' 

 

라는 의구심을 품게됩니다...

 

저도 그랬거든요

 

너무 슬픈 이야기 ..

 

 

https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller

 

ProcessTreeKiller - Jenkins - Jenkins Wiki

This feature is available since 1.260 To reliably kill processes spawned by a job during a build, Jenkins contains a bit of native code to list up such processes and kill them. This is tested on several platforms and architectures, but if you find a show-s

wiki.jenkins.io

 

 

jenkins 공홈에서 위와같은 내용을 볼 수 있습니다.

 

ProcessTreeKiller라는 놈인거같은데 내용 역시 jenkins 공홈을 보시길 추천합니다.

 

간략하게 설명하면 jenkins job이 돌때 jenkins가 올린 프로세서들은

 

job이 끝나는 지점에서 전부 종료?시키는거 같은데

 

저희의 was서버는 job이 끝나도 백그라운드로 계속 돌아야하죠 ..

 

 

방법은 아래!! 

 

 

 

Jenkins의 'Freestyle project' 에서 '이 빌드는 매개변수가 있습니다' 를 클릭하고

 

'String Parameter'를 선택해서 위와같이 'donKillMe'를 사용해서

 

job이 끝나도 쉘에서 작동시킨 process를 종료시키지 않게하는 파라미터를 던질 수 있습니다.

 

 

만약 pipeline으로 작성하시느분들은

 

In case of Jenkins Pipeline use JENKINS_NODE_COOKIE instead of BUILD_ID

 

참고!

 

 

 

https://wiki.jenkins.io/display/JENKINS/ProcessTreeKiller

 

 

 

 

+ Recent posts