Автоматическая авторизация агентов Team City Building в облаке

Мы используем место в стойке в качестве нашего облачного провайдера и запускаем новые агенты сборки по мере необходимости из существующих образов серверов.

Затем Team City обнаруживает образ агента сборки, но не авторизует его автоматически.

Можете ли вы рассказать мне, как авторизовать агенты сборки без необходимости вручную заходить в командный город и нажимать «Авторизация», поскольку эти серверы могут запускать разные варианты, каждый с разной конфигурацией.

Мне просто нужно написать правильный ключ авторизации в конфигурационный файл агента сборки или есть лучший подход к использованию Team City с облачными серверами?


person 78lro    schedule 12.10.2012    source источник


Ответы (2)


В TeamCity 10 вы можете использовать REST API для авторизации агента. при запуске с использованием имени пользователя/пароля администратора:

curl -sS -X PUT --data "true" -H "Content-Type:text/plain" -u ${TEAMCITY_SERVER_USERNAME}:${TEAMCITY_SERVER_PASSWORD} ${TEAMCITY_SERVER_URL}/httpAuth/app/rest/agents/${TEAMCITY_AGENT_NAME}/authorized

Если вы завершите файл BuildAgent/logs/teamcity-agent.log, вы увидите сообщение Registered, а затем после этого вы можете запустить указанную выше команду.

person Daniel Worthington-Bodart    schedule 25.08.2016

Подход, который сработал для меня, заключался в том, чтобы сохранить уникальный код авторизации, который записывается в файл конфигурации агента сборки, а затем передать его на этапе сборки командного города. Затем на этапе сборки обновляется файл конфигурации агента сборки с помощью powershell, и агент сборки авторизуется, когда он в следующий раз связывается с сервером Team City.

person 78lro    schedule 16.10.2012
comment
Можете ли вы уточнить этот ответ? - person Griwes; 22.04.2015
comment
да, пожалуйста ... я не буду голосовать, так как на самом деле это не говорит вам, как - person Dr. Andrew Burnett-Thompson; 24.02.2016