为什么我的TeamCity构建停止工作?

Tim*_*ong 28 git teamcity build teamcity-8.0

我有一个TeamCity构建配置,直到最近一直工作正常.突然间,队列中存在一个构建,表示它与任何代理都不兼容.给出的理由是:

隐式要求:在参数:BuildFormatSpecification中定义的teamcity.build.branch

我的BuildFormatSpecification参数定义如下:

%MajorVersion%%MinorVersion%%PatchVersion% - .%teamcity.build.branch%

反过来,它在Build Number Format字段中与构建计数器一起使用,如下所示:

%BuildFormatSpecification%.%sharedBuildNumber.id4%

这个想法是构建号出现像"1.0.0-develop.22",包括正在构建的Git分支.这遵循语义版本控制的规则.这个方案对我来说在很多项目中都有用,但突然之间这个版本被卡住了,我无法弄清楚原因.

有任何想法吗?

Joh*_*erg 55

teamcity.build.branch预定义的构建参数,在配置分支规范定义.因此,要解决您的问题,请确保您的构建步骤配置了VCS根,并添加例如+:refs/heads/(master)您的分支规范.

从TeamCity关于代理要求和隐式要求的文档:

对未知参数的任何引用(%-signs中的名称)都被视为"隐式要求".这意味着构建将仅在提供命名参数的代理上运行.

否则,通过在构建配置或项目级别上定义参数,该参数应该可用于构建配置.