我有一个Jenkins工作来停止节点应用程序,部署代码并启动应用程序。
[开始/停止是通过Upstart脚本完成的。
我使用initctl stop node-App
如果作业正在运行,则效果很好。但是,如果应用程序已终止或处于停止状态,则输出为initctl: Unknown instance:
这会导致Jenkins作业失败,无法继续进行下一步。
是否可以在发出启动命令之前检查作业是否已启动?还是Jenkins有办法不考虑错误并导致工作失败?
一位同事想出了一个很好的解决方案
if ( initctl status node-App | grep start ); then
initctl stop node-App
fi
非常简单,从詹金斯(Jenkins)运行时可以正常工作>
我正在使用类似的结构