我在 TeamCity 中 设置了顶级项目A。
项目A有一个名为A1的构建配置。
项目B是A的子项目。
项目B有一个名为B1的构建配置。
在这个构建配置中,我定义了两个参数:
- env.param1 = "ABCDE"
- env.param2 = %param1%
然后,从项目B的构建配置(B1)中,我提取了一个元运行器并将其附加到B的父项目A。
但是,当我尝试在项目A的构建配置(A1)中使用元运行器时,此构建将无法运行;它抱怨env.param1没有定义。
当我查看构建步骤 ( A1 ) 或元运行器的定义时,我可以清楚地看到env.param1是在其中定义的。但是在项目A的构建配置(A1)参数页面上,它将env.param1列为“”。
我认为元运行器或多或少地封装了其中定义的所有内容,因此可以在您附加它的任何地方使用它。从文档:
基本上,元运行器是来自一个构建配置的一组构建步骤,您可以在另一个构建配置中重用它们;它是一个包含构建步骤、要求和参数的 xml 定义,您可以在其他构建配置的 xml 定义中使用这些定义。TeamCity 允许使用 Web UI 提取元运行器。
[剪辑]
单击“提取”按钮后,TeamCity 将获取此构建配置中所有构建步骤和参数的定义,并从中创建一个构建运行器。
我究竟做错了什么?