【问题标题】:Use ssh script return value in Jenkins在 Jenkins 中使用 ssh 脚本返回值
【发布时间】:2015-01-19 16:52:51
【问题描述】:

我们正在使用 SSH 脚本部署我们的应用程序。对于生产阶段,我们需要确定两个集群中的哪一个当前处于活动状态。这只能通过在远程主机上运行命令并解释其输出来可靠地实现。不幸的是,没有 SSH 插件可以做到这一点。

他们似乎只能解释 SSH 脚本返回值是否不为零。

目前我只看到两个不受欢迎的解决方案:

  • 在 Python、Groovy 等脚本中使用 SSH(意味着我们必须以某种方式为其提供 SSH 身份验证)
  • 让 SSH 命令写入文件,然后将其复制到 Jenkins 并在那里解释(不优雅且麻烦)

【问题讨论】:

  • 你想从 ssh 输出中解释什么。执行 ssh 命令时成功或失败
  • 是的,我没有说清楚,但我想阅读 SSH 命令行输出。 IE。 “ssh kossmoboleat@remote.com ls”,它将返回文件列表。我想在 jenkins 的一个变量中输出该命令,以便进一步处理以有条件地部署到一台或另一台服务器。
  • 请说明需要运行的环境/操作系统。可以使用哪种 ssh 身份验证(密码、ssh 密钥、带或不带密码?)您是否能够安装任何新工具或 jenkins 插件?

标签: ssh jenkins


【解决方案1】:

好的,根据您在评论中提到的内容,我认为您可以尝试here 中给出的类似操作,然后使用 ftp 将该文件复制回 jenkins,然后读取文件内容。

或者您可以使用 SSHExec task 在 Ant 脚本中编排整个过程并在 Ant 中获取输出

【讨论】:

    猜你喜欢
    • 2018-07-16
    • 1970-01-01
    • 2019-05-20
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 2017-12-08
    • 2011-10-22
    • 1970-01-01
    相关资源
    最近更新 更多