一尘不染

使用System groovy脚本从Jenkins工作区读取文件

jenkins

但是,我需要从System Groovy脚本读取文件,因此使用Text-finder或Groovy PostBuild插件的解决方案将不起作用。

如何从系统Groovy脚本获取工作区路径?我尝试了以下方法:

System.getenv('WORKSPACE')
System.getProperty("WORKSPACE")
build.buildVariableResolver.resolve("WORKSPACE")

谢谢!


阅读 365

收藏
2020-07-25

共1个答案

一尘不染

每个构建都有一个 工作区 ,因此您需要首先找到所需的项目。(在詹金斯中,术语“工作”和“项目”在API中也是可以互换使用的。)

之后,您可以交叉手指,只需调用getWorkspace()已弃用的即可(有关详细信息,请参见JavaDoc)。

或者,您可以找到一个特定的构建(例如最后一个构建),它可以通过类中定义的方法为您提供用于该特定构建的 工作空间
getWorkspace()``AbstractBuild

示例代码:

Jenkins.instance.getJob('<job-name>').lastBuild.workspace;
2020-07-25