从TeamCity构建步骤开始后台流程

从TeamCity构建步骤开始后台流程,teamcity,Teamcity,当我尝试从TeamCity中的自定义脚本步骤运行程序启动后台进程时,我发现它会在步骤完成后立即终止后台进程。有没有办法保持后台进程运行 以下是我在步骤中要做的: ORACLE_POD_NAME=`...complex logic here...` oc port-forward $ORACLE_POD_NAME 15210:1521 & PORT_FORWARD_PID=$! echo $PORT_FORWARD_PID > port_forward.pid 其想法是在构建期

当我尝试从TeamCity中的
自定义脚本
步骤运行程序启动后台进程时,我发现它会在步骤完成后立即终止后台进程。有没有办法保持后台进程运行

以下是我在步骤中要做的:

ORACLE_POD_NAME=`...complex logic here...`

oc port-forward $ORACLE_POD_NAME 15210:1521 &
PORT_FORWARD_PID=$!

echo $PORT_FORWARD_PID > port_forward.pid
其想法是在构建期间创建一个转发到我的OpenShift pod的持久端口,b/c许多后续构建步骤都需要它。然后,我将使用写入文件的PID终止端口转发进程


不幸的是,
oc-port-forward
在步骤结束时立即终止。有没有办法让它工作?

解决方案是断开我正在启动的后台子进程与父进程的输入和输出,并告诉子进程不要响应
HUP(挂起)
信号

nohup oc port-forward $ORACLE_POD_NAME 15210:1521 > /dev/null 2>&1 </dev/null &
PORT_FORWARD_PID=$!
nohup oc端口转发$ORACLE\u POD\u NAME 15210:1521>/dev/null 2>&1