TeamCity 2024.07: новый механизм лицензирования, переработанная страница Problems, GitHub Checks Webhook Trigger и многое другое

Встречайте TeamCity 2024.07! В этой версии мы подготовили для вас несколько долгожданных функций, в том числе новый механизм лицензирования через JetBrains Account, упрощающий управление лицензиями.

Также добавлен новый GitHub Checks Webhook Trigger, который сразу ставит сборку в очередь после коммита в GitHub и показывает обновления в удобном формате.

Кроме того, на обновленной странице Problems можно посмотреть всю информацию о проблемах, возникших во время сборок и тестов в TeamCity.

Новые способы управления лицензиями в TeamCity

Теперь для активации лицензий администраторы TeamCity могут использовать учетную запись JetBrains Account. Вы можете подключить JetBrains Account к своему экземпляру TeamCity (в том числе к TeamCity Professional) и получать лицензии из JetBrains Account.

Новая схема призвана упростить управление лицензиями для сервера и агентов TeamCity с использованием JetBrains Account.

Теперь вам достаточно войти в JetBrains Account на странице Licenses в TeamCity и выбрать лицензию сервера, которую нужно активировать. После подключения TeamCity автоматически обновит все лицензии сервера и агентов, так что вам не нужно будет вручную вводить лицензионные ключи для дополнительных агентов или для продления лицензий.

Подробнее об активации лицензий через JetBrains Account — в документации.

Пользовательский путь к вариантам настроек в репозитории

В TeamCity можно программным образом конфигурировать проекты и настройки при помощи Kotlin DSL и XML.

Раньше, если варианты настроек проекта хранились в системе контроля версий, TeamCity мог отслеживать только директорию .teamcity. При этом TeamCity мог хранить варианты настроек всех подпроектов в едином репозитории, но только если в основном проекте была включена функция версионирования настроек. В некоторых случаях это было неудобно.

Например, при повреждении DSL в основном проекте блокировались обновления для всех подпроектов и других сборок.

Еще одно неудобство прежнего подхода заключалось в том, что, когда изменения в одном проекте приводили к новой компиляции Kotlin DSL, настройки применялись и к другим проектам, сохраненным в том же репозитории, даже если внесенные изменения не должны были их затрагивать.

В новой версии мы добавили возможность задать в TeamCity пользовательские пути к вариантам настроек в репозитории.

Переработанная страница Problems

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

Мы переработали интерфейс страницы Problems, чтобы получать информацию о проблемах и их статусе было проще.

GitHub Checks Webhook Trigger

Новая функция TeamCity позволяет добавить сборку в очередь сразу после отправки коммита в GitHub, а статусы выполнения сборок отображаются на GitHub, в удобном формате с использованием Markdown.

При этом TeamCity не только публикует статусы, но и создает GitHub Check Run, которые выполняются сразу после вашего коммита. Это означает, что вы можете легко отслеживать статусы проверок и подробную информацию прямо в GitHub, без необходимости переключаться между GitHub и TeamCity.

Кроме того, если что-то пойдет не так, вы можете перезапустить проверки прямо из GitHub, не заходя в TeamCity.

Триггер совместим с подключениями в качестве GitHub App, которые используют вебхуки.

Загрузка SSH-ключей при создании проектов или корней VCS из URL

В TeamCity можно создавать проекты или корни VCS из URL.

Раньше форма создания проекта или конфигурации сборки из URL принимала только учетные данные: имя пользователя и пароль/токен доступа.

Мы переработали форму аутентификации, и теперь там можно вручную выбрать подходящий вариант: Password/Access token или SSH key.

TeamCity также автоматически определяет и рекомендует использовать оптимальный вариант, когда вы вводите URL в соответствующее поле. Кроме того, на той же странице можно загрузить новый SSH-ключ.

Поддержка дублирования сопоставления в Perforce

Уже некоторое время Perforce Helix Server позволяет сопоставлять один путь в репозитории с несколькими областями в рабочем пространстве клиента. Эту функцию называют «дублирование сопоставления» (ditto mapping).

Теперь она поддерживается в TeamCity.

Полный список всех новых возможностей TeamCity 2024.07 вы найдете в документации.

Как всегда, вы можете задать вопросы и высказать свои предложения на форуме или через форму на нашем сайте.