Динамически генерируемый пользовательский путь к рабочей области Hudson - PullRequest
0 голосов
/ 08 декабря 2010

Я пытаюсь получить задание Хадсона, чтобы получить встроенный путь к рабочей области, который автоматически генерируется с помощью yyyyMMdd-HHmm. Я могу расширить переменную $BUILD_ID, как указано в ошибка 3997 , и это, кажется, работает нормально. Однако путь к рабочей области неверен, так как он имеет формат yyyy-MM-dd_HH-mm-ss. Я пытался использовать плагин ZenTimestamp v2.0.1, который изменяет $BUILD_ID, но, похоже, он вступает в силу только после создания рабочего пространства.

Есть ли способ определения настраиваемого рабочего пространства так, как я хочу?

1 Ответ

1 голос
/ 01 февраля 2011

Вы можете использовать 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);
...