TeamCity
Powerful CI/CD for DevOps-centric teams
Публикации и ответы на комментарии в блогах JetBrains не выходят на русском языке с 2022 года.
Приносим извинения за неудобства.
TeamCity 2020.2: интеграция с Bitbucket Cloud, Python и JetBrains Space, шаги сборки без агентов, новые возможности администрирования и многое другое
TeamCity 2020.2 предоставляет безопасный вход в систему через внешние сервисы, включает в себя новый билд-раннер Python и интегрируется с Bitbucket Cloud и JetBrains Space. Теперь можно выполнять сборки во внешних сервисах без участия агентов сборки, а также менять настройки проекта на вторичных серверах. Администраторы могут настраивать очистку сервера по расписанию и просматривать, сколько дискового пространства используется во внешних хранилищах. Кроме того, мы обновили интерфейс Sakura.
Аутентификация через GitHub, GitLab и Bitbucket
Мы стремимся к тому, чтобы непрерывная интеграция стала привычным и естественным процессом в жизни разработчиков. Чтобы охватить больше сценариев использования, TeamCity теперь поддерживает аутентификацию через внешние сервисы: GitHub, GitLab и Bitbucket.
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 теперь отображается «правая» часть цепочки — все сборки, зависящие от текущей.
Страница истории тестов
Мы добавили недостающий элемент в интерфейс Sakura — новую страницу Test History. На ней вы найдете информацию о тестах, а также сможете анализировать графики, просматривать историю исследований и многое другое.
Поиск по журналу сборки
В этой версии мы реализовали поиск по журналу сборки — это был один из самых популярных запросов пользователей. Стало намного проще просматривать журнал и понимать, что происходит во время сборки.
Фреймворк для разработки плагинов к интерфейсу Sakura
У наших пользователей всегда была возможность расширять функциональность TeamCity. Начиная с версии 2020.2, мы предоставляем новый способ написания и интеграции плагинов для пользовательского интерфейса. Подробнее о фреймворке мы рассказываем в презентации с TeamCity Technology Day:
Build Queue
Новая страница Build Queue аккуратно выглядит, очень быстро работает и позволяет легко найти все что нужно. Вы сможете сразу увидеть изменения каждой сборки в очереди, понять, что послужило триггером сборки и где она будет запускаться, узнать расчетное время запуска и просмотреть всю остальную информацию о сборке в удобном интерфейсе. Можно выбрать ненужные сборки и удалить их из очереди, а те, которые нужно завершить раньше, — переместить в верхнюю часть списка.
Это лишь некоторые из улучшений, вошедших в версию 2020.2. Полный список изменений смотрите в документации.
Ваша команда TeamCity
The Drive to Develop