TeamCity — гибкое решение, которое можно настроить под любые рабочие процессы. Оно предлагает эффективные CI-инструменты и первоклассную интеграцию с GitLab.com, GitLab Enterprise Edition и GitLab Community Edition.
По мере того как проект становится больше и сложнее, встроенных в GitLab возможностей непрерывной интеграции уже может не хватать, чтобы поддерживать эффективный процесс доставки приложения пользователям. На помощь приходит TeamCity — гибкое универсальное CI/CD-решение, которое не привязано к конкретным рабочим процессам и подойдет командам любого размера.
TeamCity доступен для Linux, Windows и macOS и может работать на ваших физических устройствах, в выбранной вами облачной инфраструктуре, в кластере Kubernetes или любом их сочетании. Решение поддерживает все языки программирования и интегрируется со всеми распространенными инструментами сборки и тестирования ПО.
TeamCity дает полезную и конструктивную обратную связь об ошибках сборки и тестирования, помогая повысить эффективность процесса разработки. Платформа предоставляет отчеты о тестах по ходу их выполнения, сохраняет историю их сборок, протоколирует длительность выполнения и помечает нестабильные тесты. Каждый тест может включать трассировку стека, скриншоты, логи и другие данные, необходимые для быстрого исследования.
Настроить непрерывную интеграцию для проектов GitLab очень просто. После того как подключение к репозиториям GitLab сконфигурировано, проект TeamCity создается за несколько кликов. Неважно, как именно организованы ваши проекты и рабочие процессы, — TeamCity справится со сборкой.
TeamCity позволяет создать единый надежный CI-пайплайн с использованием разных языков программирования, платформ и инфраструктур сборки. Используя разные корни VCS, можно создать пайплайны для проектов с репозиториями как в GitLab, так и в других системах контроля версий, в том числе GitHub, Bitbucket, Azure DevOps, Mercurial, Subversion и Perforce. Подробнее об интеграции с системами контроля версий.
Выберите подходящую версию TeamCity: TeamCity On-Premises гарантирует полный контроль и масштабируемость, а TeamCity Cloud предлагает высокопроизводительное управляемое решение.
В облаке JetBrains
Войдите в TeamCity с аккаунта GitLab.com и настройте первый пайплайн всего за 2 минуты!
На вашем оборудовании
Установив TeamCity на своем оборудовании, вы сможете полностью контролировать свои пайплайны. Начните использовать решение бесплатно, а затем масштабируйте его по мере необходимости.
Благодаря полной поддержке возможностей GitLab, TeamCity обеспечивает глубокую и прозрачную интеграцию, и вы получаете четкое представление обо всех процессах DevOps.
TeamCity может в реальном времени публиковать в GitLab текущий статус каждой сборки с момента ее добавления в очередь и до завершения. Это позволяет отслеживать ход процесса и просматривать результаты прямо из коммита или merge-реквеста.
Подробнее — в разделе документации, посвященном функции Commit Status Publisher.
Можно автоматически настроить правила, чтобы слияние изменений с веткой выполнялось автоматически в рамках CI-пайплайна. Благодаря поддержке каскадных слияний можно создавать сложные рабочие процессы для внесения изменений в защищенные интеграционные и релизные ветки. Если какие-то тесты завершаются ошибкой и условия слияния не выполнены, вы можете выполнить слияние вручную из интерфейса TeamCity, не возвращаясь в GitLab.
Подробнее — в разделах документации, посвященных автоматическому и ручному слиянию веток.
С помощью TeamCity удобно расставлять метки Git, отмечая номера версий по источникам успешных (или всех) сборок. Это можно делать как автоматически, так и вручную.
Подробнее — в разделе документации, посвященном меткам систем контроля версий.
Подробную информацию обо всех задачах GitLab, описанных в сообщениях коммитов, можно посмотреть прямо в интерфейсе TeamCity.
Подробнее — в разделе документации, посвященном интеграции TeamCity с баг-трекерами.
TeamCity позволяет уведомлять авторов коммитов и коллег об ошибках в сборках и тестах, получать информацию об успешном завершении тестирования и информировать ревьюеров кода, что проверки в рамках непрерывной интеграции завершены и код готов к ревью. Решение предлагает нативную поддержку уведомлений в Slack, IDE и браузере, а также по электронной почти. Обширная экосистема плагинов обеспечивает поддержку уведомлений в Microsoft Teams, Telegram и Discord.
Работая с TeamCity Cloud и TeamCity On-Premises, можно использовать аккаунты в GitLab.com или GitLab CE/EE для авторизации и управления доступом.
Если при сборке или тестировании появляется ошибка, в первую очередь нужно понять характер проблемы и найти ее причину. TeamCity может:
Важнейший элемент эффективной DevOps-стратегии — короткие циклы обратной связи. TeamCity упрощает рабочие процессы сборки и тестирования, позволяя быстро проанализировать внесенные изменения. В результате процесс выпуска приложения ускоряется и у вас остается больше времени на поиск и устранение ошибок.
Интеграция с GitLab доступна во всех версиях TeamCity, включая бесплатную локальную версию. Кроме того, для TeamCity Cloud предусмотрен 14-дневный бесплатный пробный период.
Сравнивать TeamCity и GitLab не совсем корректно — это разные инструменты. TeamCity предлагает более широкие и гибкие возможности, чем встроенные CI/CD-функции GitLab, однако в TeamCity не поддерживается баг-трекинг и Git-хостинг.
Да, TeamCity поддерживает все популярные реестры Docker, в том числе реестр контейнеров GitLab. Помимо обычных операций с пул-реквестами и запуска сборок, TeamCity может автоматически удалять устаревшие Docker-образы во время очистки сервера. Это особенно удобно, если у вас локальная конфигурация CI/CD.
Подробнее об интеграции TeamCity с Docker.
Можно установить TeamCity-плагин в IDE на платформе IntelliJ или в Visual Studio, который позволяет запускать CI-пайплайн без коммита. Эта функция особенно популярна у разработчиков игр.