1

我正在尝试以 4 种不同的配置构建软件项目:Windows 7 机器上的 32 位调试、32 位发布、64 位调试、64 位调试。我们的设置当前涉及主节点(0 个执行者)和 2 个从节点,每个从节点有 2 个执行者。一个奴隶是 Mac,另一个是 Windows 机器——我目前只是试图在 Windows 上构建。

我的配置矩阵是这样设置的:

  • 第一个轴:用户定义的轴,名称:架构,值:32 位、64 位
  • 2nd Axis: Slaves, Name: OS, 我选择了代表Windows机器的节点
  • 第三轴:用户定义的轴,名称:BuildType,值:调试,发布

矩阵...

+----------------------+-------+--------+
| Configuration Matrix | 32bit | 64-bit |
+----------------------+-------+--------+
| Debug                |   X   |    X   |
+----------------------+-------+--------+
| Release              |   X   |    X   |
+----------------------+-------+--------+ 

它能够成功地将来自 Git 的源代码检出到工作区中的所有 4 个构建文件夹中。但是,在定义构建步骤时,我会迷路。我选择“执行 Windows 批处理命令”。这就是我迷路的地方......我在框中指定什么,以便它知道要根据 4 个构建中的哪个构建来调用哪个批处理文件?

我认为它与 Jenkins 的环境变量有关,但我设想这样做:

if (Windows Slave Machine)
{
    if (Architecture == 32bit)
    {
        if (BuildType == debug)
        {
            //Call win_32bit_debug.bat
        }
        else
        {
            //Call win_32bit_release.bat
        }
    }
    else
    {
        if (BuildType == debug)
        {
            //Call win_64bit_debug.bat
        }
        else
        {
            //Call win_64bit_release.bat
        }
    }
}
4

1 回答 1

0

您不必在“执行 Windows 批处理命令”中编写此日志 if 语句。只需尝试使用您已经定义的变量:

win_%Architecture%_%BuildType%.bat
于 2012-09-28T12:44:20.567 回答