我似乎无法在Jenkins中运行构建执行Shell步骤。我过去曾在Windows上与Hudson一起工作,并且能够毫无问题地创建外壳/批处理步骤,但似乎这里缺少一些东西。
这是一个全新的jenkins安装程序,我转到“添加构建步骤”,“执行shell”并在命令中输入“ echo hi”。我运行构建,当我查看控制台输出时,什么也没有发生。
我也尝试过执行一个test.sh文件,该文件也只是回声。我已经在linux安装和os X安装的Jenkins服务器中进行了测试。
我在运行Shell脚本的配置中缺少什么?
控制台输出显示外壳脚本步骤已完全跳过
Started by user admin Finished: SUCCESS
看起来Jenkins无法重定向系统的输出。您正在使用什么版本的Java?如果您使用的是OpenJDK,可以尝试使用Sun Java / Sun JDK吗?
第一个尝试检查是否有任何执行的测试:将以下内容添加到“ Execute Shell”中
#!/bin/bash echo "HELLO WORLD" > /tmp/testfile
运行此命令,然后检查Linux系统上是否存在/ tmp / testfile,并且其中包含HELLO WORLD文本,这意味着您的脚本实际上正在执行。
HELLO WORLD
您有哪个版本的Jenkins?
我可以证明的最后一个好版本(我知道的至少对我们来说很好)是1.447。如果您不使用那一个,是否可以尝试呢?
另外,您是否可以在Linux系统的“执行外壳”上添加#!/bin/sh或#!/bin/bash之前echo hi,看看是否可行。
#!/bin/sh
#!/bin/bash
echo hi
另外,尝试使用运行脚本source /path/to/script,看看是否可行。该脚本应包含#!/bin/sh或#!/bin/bash作为第一行,以查看是否有所不同。
source /path/to/script
注意:这些都不是必需的,但是对于获取正在发生的事情的更多信息很有帮助。无法将所有这些都放入评论中。我将根据您对以上内容的回答来更新我的答案,如果无法得到任何答案,则将其删除。