У меня есть ветки функций построения CI из Github и создания/упаковки их в локальную папку, используя соглашение об именах папок на основе проекта, номера ветвей и сборки.
Для названных ветвей (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
но в идеале мне нужно получить master как teamcity.build.branch для использования в моих шагах сборки.
Могу ли я преобразовать параметр во время выполнения? Переопределить поведение? Я даже пытался установить имя ветки VCS в DO_NOT_USE в надежде, что "master" больше не будет соответствовать стандарту - но это тоже не работает.