如何在Jenkins中使用文件夹名称enviroment变量设置自定义工作区

时间:2017-11-08 08:52:03

标签: jenkins directory workspace

我有一个包含4个子工作的Jenkins文件夹。我希望每个subjob使用与文件夹名称相同的自定义工作区。

我发现这个帖子讨论了Folder name as Enviroment Variable

对于每个子工作,我将自定义工作区设置为C:\CI\workspace/${JOB_NAME%/*}

我从configure->高级项目选项 - >使用自定义工作区

设置自定义工作区

但是当我构建subjobs时,我收到了这个错误。

java.io.IOException: Failed to mkdirs: C:\CI\workspace/${JOB_NAME%/*}
    at hudson.FilePath.mkdirs(FilePath.java:1171)
    at hudson.model.AbstractProject.checkout(AbstractProject.java:1210)
    at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:566)
    at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:491)
    at hudson.model.Run.execute(Run.java:1737)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:421)
Finished: FAILURE

请咨询,我不知道我错在哪里。

感谢。

2 个答案:

答案 0 :(得分:0)

我建议将您的代码移至c:/users/YOURUSERNMAE/.jenkins文件夹,并在自定义工作空间文件夹路径中提供以下路径

$ {JENKINS_HOME} /yourFolderNameWherePOM.XML存在

答案 1 :(得分:0)

请在groovy中正确使用它:

customWorkspace "C:/CI/${JOB_BASE_NAME}"

OR

customWorkspace "C:/CI/${JOB_NAME}"