Поддержка языков программирования в TeamCity

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

TeamCity «из коробки» поддерживает следующие языки:

Если вашего языка в этом списке нет, не волнуйтесь: TeamCity и его консольный инструмент (Command Line Runner) поддерживают любые рабочие процессы и позволяют запускать любые скрипты, поддерживаемые вашей операционной системой.

С помощью TeamCity сборку можно запускать в облаке или в локальной инфраструктуре, на Linux, Windows или MacOS, а также в контейнерах Docker и кластерах Kubernetes. Умная оптимизация пайплайна гарантирует эффективное использование ресурсов сборки и быструю обратную связь.

Полная поддержка Docker

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

.NET

Анализ сбоев и покрытия кода

TeamCity — универсальное CI/CD-решение для .NET-проектов, которое предлагает нативную поддержку инструментов сборки .NET, фреймворков тестирования и управления зависимостями NuGet в сочетании с автоматическим определением шагов сборки и интеграцией с Visual Studio. TeamCity поддерживает скрипты на C#, поэтому разработчики игр получают отличную платформу для автоматизации сборки, тестирования и выпуска Unity-проектов.

Подробнее о непрерывной интеграции в .NET-проектах.

Возможности TeamCity:

  • Полная поддержка всех версий .NET Framework и .NET Core.
  • Полная поддержка различных фреймворков тестирования .NET, в том числе NUnit, MSTest, VSTest, MSpec, xUnit и фреймворков на основе Gallio, таких как MbUnit, NBehave и csUnit.

C++

Анализ сбоев и покрытия кода

TeamCity поддерживает проекты любого размера, поэтому это наилучшее CI/CD-решение для проектов на C и C++. Автоматизировав сборку проектов на C++ в TeamCity с помощью MSBuild или билд-раннеров Visual Studio, вы получаете подробные отчеты и анализ, настраиваемые уведомления, а главное — пайплайн сборки и тестирования с возможностью масштабирования и настройки.

Возможности TeamCity:

  • Запуск автоматизированной сборки с помощью MSBuild, Visual Studio или CMake.
  • Полная поддержка различных фреймворков тестирования .NET, в том числе NUnit, MSTest, VSTest, MSpec, xUnit и фреймворков на основе Gallio, таких как MbUnit, NBehave и csUnit.

Go

Благодаря функции сборки Golang в TeamCity можно в реальном времени просматривать результаты автоматизированных тестов Go.

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

Java

TeamCity обеспечивает мгновенную обратную связь по новым изменениям кода в Java-проектах. Создание надежного масштабируемого CI/CD-пайплайна требует минимальных усилий благодаря нативной поддержке основных фреймворков сборки и тестирования Java в сочетании с автоматическим определением шагов сборки.

  • Запуск сборки с нативной поддержкой заданий сборки Ant, Maven, Gradle и SBT.
  • Полная поддержка проектов IntelliJ IDEA.
  • Запуск инспекций кода и просмотр отчетов о качестве кода прямо из IDE.
  • Просмотр результатов тестов JUNit и TestNG в реальном времени в интерфейсе TeamCity или из IDE.
  • Автоматизация умного изменения порядка тестов для приоритизации тестов, которые недавно завершились с ошибкой, были вновь добавлены или изменены.
  • Оценка сложности кода и отслеживание покрытия кода с помощью IntelliJ IDEA, EMMA и JaCoCo.
  • Автоматическое выявление дублирующегося кода в ходе каждого задания сборки.
  • Сборка Android-проектов с помощью билд-раннера IntelliJ IDEA.

JavaScript

Настраиваемая платформа сборки и тестирования TeamCity позволяет проверить проекты Node.js: TeamCity автоматически определяет шаги сборки JavaScript, поэтому настроить и запустить пайплайн можно всего за несколько минут.

  • Полностью поддерживаются инструменты Node.JS, включая npm и yarn.
  • Для инспекций кода можно использовать ESlint, а для автоматизированных тестов — Jest и Mocha.
  • Для повышения эффективности CI/CD-процесса настройте условия запуска шагов сборки.
  • Выполняйте скрипты Node.js внутри Docker-контейнеров для обеспечения бесперебойного и масштабируемого пайплайна.
  • Скачивайте пакеты из публичных и частных реестров npm и используйте их в заданиях сборки.

Непрерывная интеграция с Kotlin

Используйте лучшие практики DevOps и храните конфигурацию CI/CD как код с помощью Kotlin DSL в TeamCity.

  • Используйте одни и те же настройки конфигурации сборки в разных проектах TeamCity с помощью Kotlin DSL.
  • Настройки цепочки сборок хранятся в системе контроля версий, а все изменения CI/CD-пайплайна регистрируются в журнале.
  • Файлы Kotlin DSL можно создавать автоматически из интерфейса TeamCity.
  • Пользовательские скрипты Kotlin исполняются в рамках задания сборки с помощью билд-раннера TeamCity для Kotlin.

Objective C / Swift

TeamCity обеспечивает полную поддержку Objective C, Swift и C++. Создавайте собственные машины или пользуйтесь агентами TeamCity Cloud для Mac.

Билд-раннер Xcode в TeamCity создает структурированный журнал сборки с опорой на этапы сборки Xcode, находит ошибки компиляции, готовит отчеты о тестах с помощью утилиты xcodebuild и добавляет автоматические требования к клиентам для соответствующих версий установленных инструментов (Xcode, SDK и т. д.) и к инструментам созданиям отчетов через свойства агентов.

PHP

TeamCity автоматизирует сборку, тестирование и развертывание PHP-приложений.

  • Выполняйте PHP-скрипты и задания сборки Phing в рамках пайплайна сборки и тестирования с помощью пакета мета-раннеров для TeamCity.
  • Проверяйте приложения PHP и Java на наличие известных уязвимостей, автоматически находите проблемы с качеством кода и используйте полученные результаты для запуска следующего этапа пайплайна.
  • Запускайте тесты PHPUnit, следите за покрытием кода и анализируйте результаты тестов прямо в интерфейсе TeamCity.
  • Устанавливайте и обновляйте пакеты Composer в рамках CI/CD-пайплайна.

Python

TeamCity поможет за несколько минут создать оптимальный CI/CD-пайплайн для Python-проектов. Первоклассная поддержка Python 2.x и 3.x позволяет TeamCity автоматически определять шаги сборки, создавать отчеты об инспекциях кода и результатах тестирования и открывает максимально широкие возможности настройки процесса сборки.

  • Билд-раннер Python в TeamCity обеспечивает полную поддержку Python.
  • Автоматическое определение шагов сборки для проектов Python помогает быстро начать работу.
  • Файлы, модули и пользовательские скрипты Python могут выполняться в рамках автоматизированного пайплайна сборки и тестирования.
  • Для инспекций кода при внесении изменений можно использовать Flake8 или Pylint.
  • Генерируйте умные отчеты о тестировании и метрики покрытия кода тестами благодаря интеграции с unittest и Pytest.
  • Чтобы гарантировать полную изоляцию и повторяемость процесса, шаги сборки можно запускать в Docker-контейнере или в виртуальных средах: Pipenv, Poetry, virtualenv или venv.

Ruby

TeamCity поможет создать автоматический процесс непрерывной интеграции и развертывания для проектов Ruby и Ruby on Rails.

  • Выделенный билд-раннер Rake для запуска заданий Rake — от сборки и тестирования до публикации и очистки. Подробнее.
  • Сборка проектов Ruby и Ruby on Rails с помощью RVM, Bundler или Ruby SDK. Подробнее.
  • Просмотр отчетов в реальном времени и умная параллелизация тестов для Test::Unit, test/spec, Shoulda, RSpec и Cucumber.

Мультиплатформенный, мультиязыковой, мультиоблачный

TeamCity обеспечивает максимальную гибкость рабочих процессов непрерывной интеграции и развертывания.

  • TeamCity автоматически определяет шаги сборки и помогает быстро начать работу.
  • Обрабатывая результаты юнит-тестирования в TeamCity, можно задать условия неудачного завершения сборки, определяющие, нужно ли запускать следующий этап процесса.
  • С помощью консольного билд-раннера TeamCity можно выполнить любой скрипт, поддерживаемый операционной системой хоста или Docker-контейнером.
  • Более 100 бесплатных плагинов доступны в JetBrains Marketplace.

Начните работу в TeamCity

Эффективный CI/CD-инструмент, который говорит на вашем языке