У нас есть некоторое выполнение агентов сборки TeamCity, и я хотел бы уничтожить и восстановить все агенты за ночь автоматически, чтобы иметь чистый набор агентов утром. Уничтожение и настройка агента не являются проблемой, но я не могу найти способ авторизовать новые агенты автоматически. Документация TeamCity говорит о веб-UI только, который является довольно плохой начальной точкой для автоматизации.
Кто-либо получил решение для этого?
Я пытаюсь сделать именно это, и, насколько я понял, нам нужна наша система подготовки для поддержки файла по адресу
с тем же содержимым при перезапусках.
Ссылка: https://confluence.jetbrains.com/display/TCD9/Build+Agent+Configuration
Teamcity не предоставляет автоматической авторизации агентов, кроме пользовательского интерфейса, но если вы используете те же имена сервера/хоста, вы можете попробовать, создав резервную копию и восстановив файл agent.properties в соответствии с указаниями Марселя. этот файл будет иметь ключ авторизации агента
, как правильно указано, ссылка на документацию имеет только авторизацию на уровне UI, никакого CLI или плагинов и это сложно сделать массово
из Документации:
они авторизованы в веб-интерфейсе TeamCity.
Агент, работающий на том же компьютере, что и сервер, авторизован по умолчанию.
.Для этой цели можно использовать официальный плагин https://confluence.jetbrains.com/display/TW/Agent+Custom+Token+Authorize+Plugin
К сожалению, он позволяет использовать только одного агента на токен, но это хороший момент для начала. Существуют также неофициальные плагины, такие как https://github.com/matt-richardson/TeamCityAgentAutoRegisterPlugin , которые позволяют автоматическую авторизацию нескольких агентов на каждый токен
Это должно получить авторизацию нового агента через TC API
curl -u teamcityuser:userpassword --request PUT --data true --header "Content-Type: text/plain" http://teamcityserver/httpAuth/app/rest/agents/mynewteamcityagent/authorized