Я хочу настроить параметризованную сборку в 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
Наша сборка состоит из множества шагов — получение из subversion, затем запуск комбинации команд MSBuild, пакетных файлов DOS и сценариев Powershell.
Обычно мы планируем наши сборки из интерфейса Hudson, и я хочу, чтобы запись параметра была максимально защищена от идиотов.
Есть ли способ сделать это?