FAKE получить сборку TeamCity
Я создаю некоторые сценарии сборки, используя FAKE для настройки TeamCity. Часть моей сборки требует от меня доступа к teamcity.build.branch
параметр, однако, поскольку это не переменная окружения, я не уверен, как получить к нему доступ.
Я пытался добавить %teamcity.build.branch%
к переменной среды в TeamCity, но, похоже, это не так. Я также не могу получить к нему доступ с помощью модуля FAKE git, потому что агенты городских команд не используют git для получения файлов проекта, TeamCity передает их им.
Как бы я получить teamcity.build.branch
Параметр до моих скриптов FAKE? В идеале я хотел бы, чтобы она была переменной среды, чтобы я мог выбрать ее прямо из скрипта, но я открыт для любых других идей.
2 ответа
Я понял это с небольшой помощью из ответа @Nadeem.
Теперь у меня есть файл build.bat/cmd, принимающий параметр, который я затем передаю в мой вызов Fake.exe следующим образом:
"packages\FAKE\tools\Fake.exe" build.fsx branch=%1
Тогда внутри моего поддельного кода я использую getBuildParamOrDefault "branch" <default branch here>
,
Я тогда использую это как название ветви. Я также использую разделение строк в параметре сборки, который приходит, потому что обычно это в формате ref/head/<branch name>
и я хочу только название филиала.
Я также должен был пройти в %teamcity.build.vcs.branch.<project>%
вместо %teamcity.build.branch%
моим агентам не понравилось неявное требование. Я не совсем уверен, почему это так, но сейчас все работает хорошо.
Попробуйте пройти %teamcity.build.branch%
в качестве параметра на этапе сборки.