这里是指广义上的后台,不管是shell命令nohub或者其他,只要是需要常驻linux后台的命令或者程序,如果通过Jenkins启动,当任务结束时Jenkins都会清理掉此次任务中的所有相关进程,现象就是明明运行成功了但是实际找不到进程
解决方法:
自由风格的job,在参数化构建里增加BUILD_ID默认值为dontKillMe
流水线pipeline里如下即可:
pipeline
{
agent { label 'test' }
stages
{
stage('test')
{
steps
{
sh "JENKINS_NODE_COOKIE=dontKillMe && nohub xxx.sh"
}
}
}
}