一步启动守护进程

Start daemon as one step

我的测试工作流程需要启动 2 个 NodeJS 应用程序(稍后启动测试并将 REST 请求发送到启动的守护进程)。但显然 运行 node server.js 的步骤永远不会结束(当然直到服务器应用程序停止)。

我尝试按照 command='nohup node server.js &' 的方式开始,但它不起作用 - 仍在等待步骤完成。

如何将守护进程作为测试步骤之一启动?

好吧,我终于整理好了。我不知道为什么,但是如果 ShellCommand 中的命令没有返回到提示符(比如在命令末尾使用 & 时),它会被视为“未完成并被超时杀死。所以我不能只需像 nohup node ./server.js &.

一样启动守护进程

但如果将此命令放在 shell 脚本中,则可以解决此问题。我创建了用于启动守护进程的运行程序并且它有效。

#!/bin/bash

CMD="   "
[ $# -eq 0 ] && { echo "Usage: [=10=] [FILE_1] [FILE_2] [FILE_3]"; exit 1; }
eval "${CMD}" &>/dev/null &!;

用法:/usr/local/bin/runner /node-v8.x-linux-x64/bin/node server.js