반응형
개요 : 개발서버에서 젠킨스를 이용하여 svn에 등록된 소스를 톰캣에 반영시키는 중인데 젠킨스에서 빌드를 시킬 때 톰캣을 수동으로 재기동 시키기 않으면 적용이 제대로 안되는 문제가 발생하였다. 그리하여 젠킨스 빌드후에 쉘을 사용하여 톰캣이 재기동 되도록 하였다.
환경 : centos 7, 젠킨스 2.346.1, 톰캣 8.5
방법 :
1. 본인이 원하는 경로에 vi나 vim으로 sh 파일을 만든다.
* 예시 : /usr/local/etc/jenkins_custom/custom_tomcat_restart.sh
* sh 파일의 내용
echo 'Tomcat shutdown'
/usr/local/apache-tomcat-8.5.xx/bin/shutdown.sh
sleep 10
echo 'Tomcat start'
/usr/local/apache-tomcat-8.5.xx/bin/startup.sh
2. visudo 명령어를 사용하여 /etc/sudoers 파일을 수정한다.
약 100라인쯤에 root ALL=(ALL) ALL 라인이 보이면 하단에
root ALL=(ALL) ALL
jenkins ALL=(ALL) NOPASSWD: ALL
추가 후 저장한다.
3. 젠킨스에서 빌드 후에 쉘을 실행하도록 지정한다.
4. 젠킨스에서 빌드를 진행하면 쉘(sh)이 동작하는 것을 로그를 통해서 확인 할 수 있다.
5. 문제발생
sh 파일에서 sleep을 10초 이상으로 설정하면 젠킨스 오류가 발생한다...
그리고 자바나 sql 이 정상적으로 반영이 안되는 문제가 발생하였다. 메모리에 톰캣이 남아있어서 발생하는 문제인 것 같은데 추후에 해결책을 찾아봐야겠다......
[도움을 받은 곳]
반응형
'VCS, CI' 카테고리의 다른 글
젠킨스 no suitable constructor found 오류 해결 (0) | 2023.04.04 |
---|---|
젠킨스 FileNotFoundException 파일 cannot be oppend because it does not exist 문제 (0) | 2022.07.21 |
젠킨스 Jenkins TomcatManagerException: The Tomcat Manager responded "<html> ... 문제 해결 (0) | 2022.07.13 |
젠킨스 SSLHandshakeException: No subject alternative names matching IP address IP Address found 문제 해결 (0) | 2022.07.13 |
젠킨스 TLS(SSL) 접속 설정 방법 (0) | 2022.07.07 |