TeamCity — использовать переменную среды в файле buildAgent.properties?

Я нахожусь в процессе настройки TeamCity в Azure, точнее, я настраиваю несколько агентов сборки. Некоторые свойства агентов сборки настраиваются через файл buildAgent.properties, например имя, порт и т. д. Я хотел бы назвать агент именем компьютера, на котором он расположен, но я не могу найти (и действительно не знаю, если это возможно) в любом случае использовать переменные среды для установки имени агента, т.е. env.COMPUTERNAME?

Кажется, единственный способ сделать это - жестко закодировать имя

#Generated properties (see buildAgent.dist.properties for description)
name=tc-agent-001 #is it possible to use environment variable here?
ownPort=9090
serverUrl=http\://mybuildserver.mycompany.com
workDir=C\:\\BuildAgent\\work
tempDir=C\:\\BuildAgent\\temp
#User defined properties
env.TEAMCITY_JRE=C\:\\BuildAgent\\jre

Кто-нибудь нашел способ сделать это?


person Jon    schedule 03.06.2014    source источник


Ответы (1)


У наших агентов было такое поведение по умолчанию. Это свойство имени появляется в переменной окружения env.COMPUTERNAME, и это было имя хоста каждой виртуальной машины.

Если имя хоста вашего компьютера отличается от имени в списке, просто измените этот параметр, но, поскольку этот файл представляет собой просто проанализированный список настроек, нет способа программно определить имя хоста для вас. - если вы не напишете сценарий для определения имени хоста машины, а затем измените файл свойств.

person Patrick Allwood    schedule 03.06.2014
comment
Я также должен упомянуть, что мы установили все наши агенты, используя установщик Windows, а не функцию «Agent Push», и оттуда можно настроить переменные среды по умолчанию. - person Patrick Allwood; 03.06.2014
comment
Да, я думал, что мне придется изменить этот файл, когда агент запустится, чтобы получить там динамическое имя. Будем надеяться, что TeamCity скоро разберется с динамической подготовкой агента сборки в Azure! - person Jon; 04.06.2014
comment
Вы можете изменить файл в любое время, агент обнаружит изменения и перезапустится. Итак, если вы хотите пойти по пути написания чего-то для обновления файлов свойств ваших агентов, это будет работать нормально. - person Patrick Allwood; 04.06.2014