我想在 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 界面安排我们的构建,我希望参数条目尽可能地防白痴。
有没有办法做到这一点?