最近まで正常に機能しているTeamCityビルド構成があります。突然、どのエージェントとも互換性がないというビルドがキューに残っています。与えられた理由は次のとおりです。
暗黙の要件:パラメーターで定義されたteamcity.build.branch:BuildFormatSpecification
私のBuildFormatSpecificationパラメーターは次のように定義されています。
%MajorVersion%。%MinorVersion%。%PatchVersion%-%teamcity.build.branch%
これは、次のように、ビルドカウンターとともに[ビルド番号の形式]フィールドで使用されます。
%BuildFormatSpecification%。%sharedBuildNumber.id4%
ビルド番号は「1.0.0-develop.22」のようになり、ビルド中のGitブランチが含まれるという考え方です。これは、セマンティックバージョニングのルールに従います。このスキームは多くのプロジェクトで機能してきましたが、突然この1つのビルドがスタックし、理由がわかりません。
何か案は?
_teamcity.build.branch
_は 事前定義されたビルドパラメータ ですが、 ブランチ仕様 の場合はのみ定義されます =が構成されています。したがって、問題を修正するには、ビルドステップにVCSルートが構成されていることを確認し、たとえば、ブランチ仕様としての+:refs/heads/(master)
。
エージェント要件 および暗黙の要件に関するTeamCityのドキュメントから:
不明なパラメーターへの参照(%記号での名前)は、「暗黙の要件」と見なされます。つまり、ビルドは、指定されたパラメーターを提供するエージェントでのみ実行されます。
それ以外の場合は、ビルド構成またはプロジェクトレベルでパラメーターを定義して、ビルド構成でパラメーターを使用できるようにする必要があります。