Features Releases TeamCity

TeamCity 2020.2: интеграция с Bitbucket Cloud, Python и JetBrains Space, шаги сборки без агентов, новые возможности администрирования и многое другое

Read this post in other languages:
English

TeamCity 2020.2 предоставляет безопасный вход в систему через внешние сервисы, включает в себя новый билд-раннер Python и интегрируется с Bitbucket Cloud и JetBrains Space. Теперь можно выполнять сборки во внешних сервисах без участия агентов сборки, а также менять настройки проекта на вторичных серверах. Администраторы могут настраивать очистку сервера по расписанию и просматривать, сколько дискового пространства используется во внешних хранилищах. Кроме того, мы обновили интерфейс Sakura.

Встречайте TeamCity 2020.2

Аутентификация через GitHub, GitLab и Bitbucket

Мы стремимся к тому, чтобы непрерывная интеграция стала привычным и естественным процессом в жизни разработчиков. Чтобы охватить больше сценариев использования, TeamCity теперь поддерживает аутентификацию через внешние сервисы: GitHub, GitLab и Bitbucket.

Аутентификация при помощи внешних поставщиков OAuth

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

Помимо облачных сервисов, TeamCity 2020.2 поддерживает локальные версии GitHub (GitHub Enterprise) и GitLab (GitLab self-hosted).

Bitbucket Cloud: теперь с пул-реквестами

Мы расширили интеграцию с Bitbucket Cloud, добавив поддержку пул-реквестов. Теперь вы можете настроить TeamCity для автоматического подтягивания пул-реквестов из репозитория Bitbucket Cloud и запуска соответствующих сборок. Вместе с функциями Commit Status Publisher и Automatic Merge это нововведение позволит вам работать с любимыми инструментами максимально эффективно.

Билд-раннер для Python

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

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

Статусы сборок в Space

Commit Status Publisher теперь поддерживает JetBrains Space. Раньше, чтобы убедиться, что ваши изменения ничего не сломали, приходилось открывать TeamCity и искать там результаты сборки. Благодаря новой интеграции Commit Status Publisher автоматически отправляет статусы сборок в Space — вы увидите их на странице коммитов вашего проекта.

Эффективное использование агентов

Ваши CI/CD-пайплайны зависят от внешних сервисов, и агентам сборки приходится ждать завершения внешних задач? Или, хуже того, они работают в AWS или другом облаке и тратят не только ваше время, но и деньги? Тогда вам точно понравятся шаги сборки без агентов в TeamCity 2020.2. Теперь последние шаги сборок могут выполняться без участия агентов, что позволяет освободившимся агентам в это время запускать другие задачи из очереди. TeamCity отображает такие сборки как обычные и позволяет отслеживать их статус, просматривать журналы и историю.

Новые возможности вторичных серверов

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

Продвинутые функции для администраторов

Информация о занятом пространстве во внешнем хранилище

Все больше пользователей TeamCity предпочитают хранить артефакты в облаке, например в Amazon S3. TeamCity 2020.2 показывает, сколько места занято сборками не только на локальных дисках, но и в удаленных хранилищах.

Мониторинг использования дискового пространства

Настраиваемое расписание очистки сервера

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

Расписание очистки сервера

Интерфейс Sakura: функциональность и лаконичный дизайн

Наша UI-команда постоянно работает над тем, чтобы экспериментальный интерфейс Sakura поддерживал больше сценариев использования и предоставлял больше возможностей. В версии 2020.2 они подготовили много нововведений, предназначенных не только для пользователей TeamCity, но и для разработчиков плагинов.

Зависимости между сборками

Один из важных аспектов работы с CI/CD-инструментом — возможность видеть общую картину, понимать, как происходят сборки. На странице Build Dependencies есть два значительных улучшения, которые должны в этом помочь.

  • В представлении Timeline вы увидите не только текущие и завершенные сборки, но и сборки, находящиеся в очереди.
  • В представлении Build Chain теперь отображается «правая» часть цепочки — все сборки, зависящие от текущей.

Зависимости сборок: представление Build Chain

Страница истории тестов

Мы добавили недостающий элемент в интерфейс Sakura — новую страницу Test History. На ней вы найдете информацию о тестах, а также сможете анализировать графики, просматривать историю исследований и многое другое.

Поиск по журналу сборки

В этой версии мы реализовали поиск по журналу сборки — это был один из самых популярных запросов пользователей. Стало намного проще просматривать журнал и понимать, что происходит во время сборки.

Поиск по журналу сборки

Фреймворк для разработки плагинов к интерфейсу Sakura

У наших пользователей всегда была возможность расширять функциональность TeamCity. Начиная с версии 2020.2, мы предоставляем новый способ написания и интеграции плагинов для пользовательского интерфейса. Подробнее о фреймворке мы рассказываем в презентации с TeamCity Technology Day:

Build Queue

Новая страница Build Queue аккуратно выглядит, очень быстро работает и позволяет легко найти все что нужно. Вы сможете сразу увидеть изменения каждой сборки в очереди, понять, что послужило триггером сборки и где она будет запускаться, узнать расчетное время запуска и просмотреть всю остальную информацию о сборке в удобном интерфейсе. Можно выбрать ненужные сборки и удалить их из очереди, а те, которые нужно завершить раньше, — переместить в верхнюю часть списка.

Build Queue

Это лишь некоторые из улучшений, вошедших в версию 2020.2. Полный список изменений смотрите в документации.


Скачать TeamCity 2020.2

Ваша команда TeamCity
The Drive to Develop

Discover more