728x90
Jenkins 에서 PIPELINE 으로 작업 task 를 생성하여 프로세스를 실행하는 경우, 보통 Jenkins Job 이 끝나면 실행되던 Process 도 함께 종료가 된다.
이런 경우를 막기 위해서 “nohup 명령어 &” ㅇ를 이용하였는데, 최근 Jenkins 에서는 nohup 을 사용하여도 Background Process 로 계속 실행 되지 않는다.
Jenkins PIPELINE 에서 Background 로 계속 Process 를 실행 시키기 위해서는 JENKINS_NODE_COOKIE=dontKillMe 혹은 BUILD_ID=dontkillME 를 할당하여 Process 를 실행하면 된다.
stage('Run') {
steps {
echo "Run"
sh('JENKINS_NODE_COOKIE=dontKillMe && nohup ./run.sh &')
}
}
BUILD_ID 를 사용하는 것으로 매뉴얼이나 문서에는 되어 있지만, PIPELINE 에서는 DJENKINS_NODE_COOKIE 를 이용해야 Background Process 로 계속 실행이 된다.
'개발' 카테고리의 다른 글
CentOS 7 에서 추가 저장 장치(HDD, SSD 등)을 사용 설정 (0) | 2020.06.01 |
---|---|
Linux 에서 sudo [cmd] 실행시 Password 입력 안하기 (0) | 2020.06.01 |
VIM 을 IDE 처럼 사용하기(Plugin 설정) (0) | 2020.06.01 |
Spring Boot + Maven 으로 Liquibase ValidationFailedException : liquibase check sums error any changes not postgresql (0) | 2020.06.01 |
Ubuntu Static IP Address Setting (0) | 2020.06.01 |