【问题标题】:Script run by Jenkins writing to build workspace由 Jenkins 运行的脚本编写以构建工作区
【发布时间】:2018-09-28 22:42:02
【问题描述】:

场景:我有一个脚本,它生成一些文件,Jenkins 需要使用 Publish Over SSH Plugin 将这些文件通过 SCP 传送到各种目标主机。在使用专用插件(例如 Maven)的情况下,生成的工件默认放置在构建工作区目录中,但这是驻留在 Jenkens 服务器文件系统中的脚本,它会在其输入配置告诉它的任何地方转储文件。我希望我可以提供 Jenkins SSH 作业的绝对路径,但这不起作用——显然,它的可访问性范围是特定构建的工作区。因此,虽然作业 GenerateFiles 成功地将适当的文件转储到静态位置(例如 /var/local/dump),但下游的作业 SendFilesOver 无法访问这些文件。

问题:我如何在 GenerateFiles 中指定参数将 ${JENKINS_WORKSPACE}/${THIS_BUILD} 中的文件转储到何处,以便 SendFilesOver em> 可以从那里复制它(使用“从另一个项目复制工件”)到它自己的工作区,以便它可以将它 SCP 到目的地?

【问题讨论】:

  • 你GenerateFiles如何生成文件?
  • 接受参数的Python脚本

标签: jenkins


【解决方案1】:

我希望您通过使用shell scripting 来完成这一切。所以在生成所有文件之后,即。到自定义静态位置,设置一个将指向该位置的变量。现在使用该路径,将该目录/文件复制到您的构建工作区,以便下游作业将访问这些文件。我认为您可以使用 Jenkins 的 $WORKSPACE env var 获取当前工作区。希望这会有所帮助。

【讨论】:

  • 你也可以在 python 脚本中做同样的事情。
猜你喜欢
  • 2023-03-05
  • 1970-01-01
  • 2018-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-03
相关资源
最近更新 更多