Я хочу настроить параметризованную сборку в Hudson, которая принимает только один параметр - тип сборки для создания (QA, Stage, Production). Однако для каждой из этих сборников требуется установить несколько различных переменных среды. Что-то вроде (псевдокод):В Хадсоне, как установить несколько переменных среды с учетом одного параметра?
if ${CONFIG} == "QA" then
${SVN_PATH} = "branches/dev"
${BUILD_CONFIG} = "Debug"
# more environment variables...
else if ${CONFIG} == "Production" then
${SVN_PATH} = "trunk"
${BUILD_CONFIG} = "Release"
# more environment variables...
else # more build configurations...
end if
Есть множество шагов в нашей сборке - тянуть от подрывной деятельности, а затем запустить комбинацию MSBuild команд, пакетные файлы DOS и Powershell сценариев.
Обычно мы планируем наши сборки из интерфейса Hudson, и я хочу, чтобы запись параметра была как можно более уверена.
Есть ли способ сделать это?
Я дам вам точку, но это не поможет. Какие трюки вы знаете о том, что позволяет мне изменить среду вызывающего процесса (java, запустив Hudson)? Я пробовал использовать SETX, а также вызывать метод SetEnvironmentVariable .NET.Оба они работают, но ни один из них не может повлиять на набор переменных среды вызывающего процесса. Поэтому последующие вызовы по моим разрозненным шагам сборки не видят изменений. То, что я действительно ищу, похоже на плагин SetEnv, за исключением того, что он должен допускать немного структурированного программирования вокруг него. – roufamatic 2010-12-03 08:42:56
Итак, вы говорите, что он не работает с использованием `setx` на первом этапе сборки и получает переменные во втором шаге сборки? – 2010-12-03 12:25:59