【问题标题】:Jenkins script execution and output displayJenkins脚本执行和输出显示
【发布时间】:2016-01-20 23:10:27
【问题描述】:

我正在尝试执行位于我们的 Linux 目录中的几个脚本,并将脚本的输出(最好)显示为控制台输出。

到目前为止,我已经为这个任务创建了一个项目,从Add Build Step中选择execute shell并从它所在的vm写入脚本路径。构建成功通过,但我没有看到任何在控制台输出上输出,所以我不确定脚本是否有效。

非常感谢您对此事的任何想法。

【问题讨论】:

  • 您必须将代码粘贴到问题中才能获得任何帮助。
  • @RobKielty 这不是关于特定脚本或以特定编程语言编写的脚本的问题,正如我在问题中所描述的那样。让我们说;您将如何执行和显示位于 /home/jenkins 目录下的“Hello World”脚本的输出?
  • 您的 jenkins 构建是否在您的脚本所在的同一虚拟机上执行?您可以使用 echo 并找到它,甚至可以限制 jenkins 在特定位置运行该构建,可以是您的脚本位置
  • @prudviraj 不,脚本位于不同的虚拟机上。我也可以将脚本链接到我的 Jenkins 机器的位置,但它们仍然需要通过 ssh 连接到某些其他 VM 才能运行它们的任务。
  • 实际上 jenkins 默认在其控制台中显示您的系统打印。在你的 shell 脚本中,给一个回声,你会在詹金斯控制台看到这个回声。

标签: jenkins


【解决方案1】:

这是我使用的解决方案。

我从“Add Build Step”中选择了“Execute Shell”,并用以下语法写下了我的命令:

/usr/bin/ssh user@machinename.com "uname -a; id; cd /home/user; ./script1; ./script2.sh"

除了我上面写的命令之外,我与将通过 ssh 连接的远程计算机共享了“用户”的 ssh 密钥,以便通过自动登录打开一个会话,而不提示输入密码。

第二个关键点是我将命令放在中间时的“”标记。

为了在控制台输出部分显示输出,此功能默认工作,除此之外,我还安装了 电子邮件扩展 插件,该插件会在每次构建后发送包含控制台输出的邮件。

【讨论】:

    猜你喜欢
    • 2015-11-14
    • 2018-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-31
    相关资源
    最近更新 更多