红联Linux门户
Linux帮助

jenkins中通过execute shell启动的进程会被杀死的问题

发布时间:2016-10-01 09:27:59来源:u013066244作者:思念悲伤
1.重设环境变量build_id
在execute shell输入框中加入BUILD_ID=DONTKILLME,即可防止jenkins杀死启动的tomcat进程
#!/bin/bash
/usr/bin/expect << EOF
set password "yutao"
spawn sudo su jenkins
expect ":"
send "$password\n"
exit
expect eof
EOF
export PATH=/usr/program/play-1.2.7.2:$PATH
##运行项目
ps -ef|grep gogoalback|grep -v grep|awk '{printf $2}'|xargs kill -9
cd /var/lib/jenkins/workspace/gogoalback/
##注意
BUILD_ID=dontKillMe
##注意
echo "pwd:"`pwd`
play start
网上的另一种方法,我没有成功(暂时不推荐)。
 
2.在启动jenkins 的时候禁止jenkins杀死衍生进程
修改/etc/sysconfig/jenkins配置,在JENKINS_JAVA_OPTIONS中加入-Dhudson.util.ProcessTree.disable=true。需要重启jenkins生效
此方法配置一次后,所有的job都无需设置BUILD_ID,就能够防止jenkins杀死启动的tomcat进程。
这种方法我没有成功。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/24627.html