我使用Jenkins作业来运行几个简单的shell命令(通过ssh,通过Jenkins SSH Plugin);这些命令都应该关闭正在运行的Tomcat服务器:Jenkins通过ssh杀死进程(Tomcat)
sudo /opt/tomcat/bin/catalina.sh stop
ps xu | awk '/[t]omcat/{print $2}' | xargs -r kill -9
的作业执行罚款,不终止Tomcat的,但不幸的是它也将失败;完整的输出是:
[SSH] executing pre build script:
sudo /opt/tomcat/bin/catalina.sh stop
ps xu | awk '/[t]omcat/{print $2}' | xargs kill -9
[SSH] exit-status: -1
Finished: FAILURE
任何想法为什么命令的退出代码if -1?我已经尝试了几个变化,没有任何运气。
谢谢。
应该只有一个单一的Tomcat进程正在运行,并命令本身工作正常(和退出时0,而不是-1),如果它是由手跑了。另外,我向xargs添加了-r选项,以确保该命令在没有输入的情况下不会运行。 – Eugen