Joa*_*him 7 tomcat restart jenkins
How can I have Jenkins restart a Tomcat instance after a successful deployment?
I already tried using a batch script, but the Tomcat instance is killed when the build is finished.
你的答案在于Jenkins ProcessTreeKiller.这里有更详细的解释.
这是一个设计决定,可以杀死构建产生的任何进程,以维护一个干净的环境.不幸的是,这意味着您无法在构建之后运行进程(例如Tomcat).
您可以通过启动Jenkins来全局禁用此功能(不推荐):
java -Dhudson.util.ProcessTree.disable=true -jar jenkins.war
或者,您可以基于每个案例禁用此功能,方法是使用更改的环境变量启动流程:
BUILD_ID=dontKillMe ./catalina restart
然而有些人报告说,改变BUILD_ID是不够的.他们建议也取消设置:
JENKINS_COOKIE
JENKINS_SERVER_COOKIE
编辑:
可能发挥作用的另一个问题是,当您连接到远程shell并在该远程shell会话中启动进程时,一旦您(Jenkins)断开连接,会话就会被终止,并且会话产生的所有进程也将被终止.要解决该问题,您需要取消该进程与shell会话的关联.
一种方法是:
nohup ./catalina restart &
| 归档时间: |
|
| 查看次数: |
16806 次 |
| 最近记录: |