如何在子项目生成的TeamCity meta runner中使用参数?
我在TeamCity设立了顶级项目A 项目A有一个名为A1的生成配置 项目B是a的子项目 项目B有一个名为B1的构建配置 在这个构建配置中,我定义了两个参数:如何在子项目生成的TeamCity meta runner中使用参数?,teamcity,teamcity-8.0,Teamcity,Teamcity 8.0,我在TeamCity设立了顶级项目A 项目A有一个名为A1的生成配置 项目B是a的子项目 项目B有一个名为B1的构建配置 在这个构建配置中,我定义了两个参数: 环境参数1=“ABCDE” 环境参数2=%param1% 然后,从项目B的构建配置(B1)中,我提取一个元运行程序并将其附加到B的父项目a 但是当我尝试在项目A的构建配置(A1)中使用元运行程序时,这个构建不会运行;它抱怨未定义环境参数1 当我查看构建步骤(A1)或元运行程序的定义时,我可以清楚地看到env.param1是在中定义的。
- 环境参数1=“ABCDE”
- 环境参数2=%param1%
我做错了什么?metarunner正在查看项目A中的env.param1,即“”。要避免这种情况,请在metarunner中使用metarunner特定的变量,并在metarunner的构建步骤中定义该变量。这样,就不会有任何混乱
如果要自动参数化,可以在构建步骤中设置metarunner特定变量,以引用项目A的%env.param1%。问题实际上比这更一般。似乎任何元运行程序都无权访问自身外部的生成参数。为了解决这个问题,您可以向metarunner添加参数,然后在每次使用metarunner时根据使用metarunner的构建的参数进行设置。