プロジェクト、ブランチ、およびビルド番号に基づくフォルダー命名規則を使用して、Github から機能ブランチをプルし、それらをローカル フォルダーにビルド/パッケージ化する CI ビルドがあります。
名前付きブランチ (feature1、feature2) の場合、これはうまく機能しています。
問題は、マスターにコミットすると、TeamCity が teamcity.build.branch を次のように公開することです。<default>
これは、ビルド ステップが展開されたときを意味します。
E:\Packages\MyProject\%teamcity.build.branch%\
それE:\Packages\MyProject\<default>
は有効なWindowsパスではないため、ビルドステップをクラッシュさせています。
完全修飾ビルド パラメータでマスター ブランチ名を確認できます。
teamcity.build.branch <default>
teamcity.build.checkoutDir C:\TeamCity\BuildAgents\agent-mulder\work\2151838a7933464d
teamcity.build.default.checkoutDir 2151838a7933464d
teamcity.build.id 16347
teamcity.build.vcs.branch.github_myproject refs/heads/master
しかし理想的には、ビルドステップで使用するための teamcity.build.branch としてmasterを取得する必要があります。
実行時にパラメータを変換できますか? 動作をオーバーライドしますか? 「マスター」がデフォルトと一致しなくなることを期待して、VCSブランチ名をDO_NOT_USEに設定しようとしましたが、これも機能していないようです。