我正在尝试将Hudson作业构建在使用yyyyMMdd-HHmm
自动生成的自定义工作区路径中。我可以像bug 3997中提到的那样扩展$BUILD_ID
变量,这似乎工作正常。但是,工作空间路径不正确,因为它的格式为yyyy-MM-dd_HH-mm-ss
。我尝试使用ZenTimestamp插件v2.0.1,它更改$BUILD_ID
,但这似乎只在创建工作区后生效。
是否有以我想要的方式定义自定义工作区的方法?
答案 0 :(得分:1)
您可以使用groovy脚本来实现这一目标。
import hudson.model.*;
import hudson.util.*;
import java.util.*;
import java.text.*;
import java.io.*;
//Part 1 : Recover build parameter
AbstractBuild currentBuild = (AbstractBuild) Thread.currentThread().executable;
def envVars= currentBuild.properties.get("envVars");
def branchName = envVars["BRANCH_NAME"];
//Part 2 : Define new workspace Path
def newWorkspace = "C:\\Build\\"+branchName;
//Part 3 : Change current build workspace
def newWorspaceFilePath = new FilePath(new File(newWorkspace));
currentBuild.setWorkspace(newWorspaceFilePath);