我有一个非常类似的问题:Reading file from Workspace in Jenkins with Groovy script
但是,我需要从System Groovy脚本读取文件,因此使用Text-finder或Groovy PostBuild插件的解决方案将不起作用。
如何从系统Groovy脚本获取工作区路径?我尝试了以下方法:
System.getenv('WORKSPACE')
System.getProperty("WORKSPACE")
build.buildVariableResolver.resolve("WORKSPACE")
谢谢!
最佳答案
每个构建都有一个工作区,因此您需要首先找到所需的项目。 (在 Jenkins 中,术语“工作”和“项目”在API中也是可以互换使用的。)
之后,您可以交叉手指,仅调用已弃用的getWorkspace()
(有关详细信息,请参见JavaDoc)。
或者,您可以找到一个特定的构建(例如最后一个构建),它可以通过getWorkspace()
类中定义的AbstractBuild
方法为您提供用于该特定构建的工作空间。
示例代码:
Jenkins.instance.getJob('<job-name>').lastBuild.workspace;
关于groovy - 使用System groovy脚本从Jenkins工作区读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23636436/