为什么netcat会从命令行工作正常但在jenkins构建中失败?

时间:2018-03-15 23:27:56

标签: linux shell jenkins netcat

我在构建服务器中运行了一个shell脚本,它启动了一个巨大的虚拟机,然后等待端口上的消息:

nc -vv -l -p 9090

庞大的虚拟机运行一个超级复杂的脚本,在完成任务时包含以下简单语句:

echo Completed | nc -vv -w10 $TARGET_IP 9090

其中TARGET_IP是构建服务器的静态配置IP地址。

当我在命令行上启动脚本时,这一切都正常。

但是,当我将同一个脚本合并到Jenkins构建中时,在同一台机器上,巨大虚拟机上脚本中的nc调用失败了:

/var/lib/cloud/instance/user-data.txt: line 11: echo: write error: Broken pipe

什么可能导致这种奇怪的行为差异?

环境是AWS EC2上的Ubuntu 16.04 LTS。

0 个答案:

没有答案