Учебники

CI — Документация и обратная связь

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

Каковы преимущества наличия этих показателей?

  • Недостаточная фиксация кода — если разработчики не часто фиксируют код в репозитории контроля версий, причиной может быть медленная интеграция сборки. Чтобы начать сокращать продолжительность сборки, выполните высокоуровневый анализ среды сборки интеграции, чтобы определить узкие места.

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

  • Повышение производительности тестирования — даже в хорошо функционирующей системе CI большая часть времени сборки интеграции будет занимать выполнение автоматических тестов. Оценка и улучшение производительности этих тестов может значительно сократить продолжительность сборки.

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

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

Недостаточная фиксация кода — если разработчики не часто фиксируют код в репозитории контроля версий, причиной может быть медленная интеграция сборки. Чтобы начать сокращать продолжительность сборки, выполните высокоуровневый анализ среды сборки интеграции, чтобы определить узкие места.

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

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

Проблемы инфраструктуры — вы можете обнаружить, что интеграционные сборки выполняются медленно из-за системной инфраструктуры. Возможно, производительность сети низкая или имеется медленное соединение с виртуальной частной сетью.

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

метрика

Ниже приведены некоторые показатели, доступные на сервере непрерывной интеграции.

Давайте посмотрим, что может предложить TeamCity —

Одна из самых простых форм метрик — это то, что доступно на панели инструментов проекта. Ключевым элементом здесь является отметить продолжительность каждой сборки. Если продолжительность каждой сборки начинает непропорционально увеличиваться в зависимости от создаваемого кода, это может быть проблемой. Таким образом, это одна обратная связь, которая может быть принята, и причинами этого могут быть то, что серверу CI не хватает ресурсов и, возможно, необходимо увеличить емкость сервера.

метрика

TeamCity имеет возможность увидеть, действительно ли на сервере CI возникают какие-либо проблемы с инфраструктурой. На панели администратора в TeamCity можно щелкнуть « Использование диска», чтобы увидеть, сколько дискового пространства используется каждой сборкой.

Панель администратора

Если требуется дополнительная информация, то в TeamCity есть кнопка диагностики , которая может предоставить дополнительную информацию о ЦП и памяти , используемых сервером CI.

Кнопка диагностики

Детальный просмотр метрик сборки

Если кто-то хочет видеть подробный вид сборок определенного проекта с течением времени, то он доступен как часть сборок проекта. На экране «Сборка проекта» перейдите к экрану «Статистика», который предоставит различные статистические данные и графики о том, как выполняется сборка.