Перейти к содержимому

julprogrammer

Регистрация: 17 окт 2019
Offline Активность: 26 мар 2020 11:53
-----

Мои темы

Интеграция PVS-Studio с различными облачными CI-системами

06 ноября 2019 - 07:00

Не секрет, что сейчас облачные CI-системы набирают все большую популярность. Команда разработчиков PVS-Studio, статического анализатора программного кода на языках C, C++, C# и Java, опубликовала цикл статей, поясняющих, как происходит процесс интеграции статического анализа кода в облачные CI-платформы.

 

Travis CI — распределённый веб-сервис для сборки и тестирования программного обеспечения, использующий GitHub в качестве хостинга исходного кода. В статье "PVS-Studio идёт в облака – запуск анализа на Travis CI" на прикладном уровне показано, как можно настроить PVS-Studio для работы с Travis CI, описан процесс проверки проекта. Более углубленно настройка показана в статье "Как настроить PVS-Studio в Travis CI на примере эмулятора игровой приставки PSP". Также PVS-Studio не обошел стороной и такие известные CI-платформы, как Buddy и AppVeyor. Предлагаю посмотреть статью "Анализ коммитов и pull request'ов в Travis CI, Buddy и AppVeyor с помощью PVS-Studio", в которой рассказано, как настроить проверку списка изменённых файлов GitHub-проекта.

 

В цикле статей "PVS-Studio идёт в облака" мы рассмотрим облачное CI\CD-решение от компании Microsoft - Azure DevOps. В состав платформы Azure DevOps входят такие инструменты, как Azure Pipeline, Azure Board, Azure Artifacts и другие, позволяющие ускорить процесс создания программного обеспечения и повысить его качество. В статье "PVS-Studio идёт в облака: Azure DevOps" мы попробуем проверить проект ShareX, бесплатное приложение, позволяющее захватывать и записывать любую часть экрана.

 

Следующий сервис, который оказался в цикле статей, называется CircleCI. Это облачный CI-сервис, поддерживающий сборку проектов как в контейнерах, так и в виртуальных машинах с ОС Windows, Linux и macOS. В качестве проверяемого проекта был выбран Kodi - бесплатный кроссплатформенный медиаплеер с открытым исходным кодом. Как интегрировать анализ кода в эту CI-систему и насколько хорош оказался код медиаплеера Kodi – читайте в нашей статье "PVS-Studio идёт в облака: CircleCI".

 

Плагин Jenkins Next Generation Warnings собирает предупреждения компилятора или проблемы, о которых сообщают инструменты статического анализа, и визуализирует результаты. Совсем недавно в нем появилась поддержка отчетов анализатора PVS-Studio. Для пользователей Jenkins вышла статья "Настройка Warnings Next Generation плагина для интеграции PVS-Studio", в которой рассказано, как установить и настроить данный плагин для использования с PVS-Studio, а также описано большинство его возможностей.

 

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