Автор оригинала: FreeCodeCamp Community Member.
Ashish Gaikwad
Создайте свой «угловой фитбит» с Дженкинсом + Сонарко
Также как недавнее внедрение носителей для отслеживания нашего здоровья, индустрия программного обеспечения долго сопровождалась практикой мониторинга здоровья программных проектов. Наиболее распространенными процессами применяются единичные тесты, интеграционные тесты, непрерывная интеграция и охват кода.
В последнее время я немного боролся в попытке настроить вышеупомянутые процессы для нашего проекта, поэтому я написал этот пост для документирования моего опыта. Поскольку Tymdercript – это язык по умолчанию для угловых 2 проектов, существующие настройки JS не работают.
Начиная
Вот шаги для настройки среды Jenkins CI для угловых проектов с покрытием кода с использованием SONARQUBE на сервере Linux Linux:
- Скачать Дженкинс и настройте его на свой сервер сборки. Убедитесь, что у вас есть Java на нем, как это требуется Jenkins. Примечание : Конфигурация по умолчанию Jenkins работает с
Дженкинспользователь, так что вам может потребоваться установитьJava_homeдляjenkins.Пользователь. - Как только Jenkins установлен, установите или убедитесь, что у вас есть следующие плагины, установленные из меню «Управление плагинами»:
- Сделайте Git, Node и Sonarqube сканер Jenkins. Это можно сделать из Конфигурация глобального инструмента Меню в Управляйте Дженкинсом меню. Вы можете либо выбрать устанавливать автоматически, либо предоставить путь установки для этих инструментов. Например:
- Наконец, сделайте Jenkins в курсе установки сервера Sonarqube из Настроить . Меню в Управляйте Дженкинсом Отказ Например:
Скачать Sonarqube и настройте его на свой сервер. Обычно это простое извлечение пакетов на всех платформах.
Чтобы включить поддержку в SONARQUBE, мы будем использовать Sonartsplugin Поскольку Sonarqube еще не имеет плагина по умолчанию для Typeyctry. Просто скачайте банку из Страница выпусков плагина и поместите его в свои установки Sonarqube Bin папка. Перезапустите Jenkins один раз. Это все.
В угловых проектах karma.conf.js Файл, изменить/добавить в браузеры Раздел Chromeheheadless Отказ
Пример: Браузеры: [«Chromeheadless»] Отказ От версии 60 наград Google Chrome поддерживает безголовый Режим на Windows. Таким образом, вы можете продолжать использовать этот параметр на локальном компьютере, если вы работаете на машине Windows в корпоративной среде (как я делаю). Я лично предпочитаю безголовый режим только в течение 1-2 секунд, что он спасает меня.
Добавьте следующее в Сценарии Раздел в Package.json файл.
Вышеуказанная команда гарантирует, что сборка – это вызвано только если все тесты успешно . –cc Флаг – это короткий код для – КОДА-КОИЗО Отказ Этот флаг создаст отчет о покрытии проектов в новой папке с именем покрытие в каталоге проекта. Файл отчета называется lacov.info. .
Конфигурация по умолчанию использует istanbul Reporter, чтобы показать отчет о покрытии кода. Чтобы опубликовать этот отчет о покрытии на SONARQUBE Server, плагин Jenkins Sonarqube Plugin Sonarqube требует конфигурации, которая может быть добавлена как sonar-project.properties Файл в проект или в конфигурации проекта Jenkins. Пример свойств файла:
Конфигурация
С помощью вышеуказанных шагов конфигурация проекта в Дженкинсах довольно проста.
Сначала создайте новую конфигурацию, используя Новый товар меню а потом а Фристайл проект Отказ
Далее в Управление исходным кодом Раздел Включить Гит И установить URL REPO проектов:
В Создание окружающей среды Раздел, включите флажок для обеспечения среды узла и NPM к конфигурации сборки.
Тогда в Построить Раздел добавить два шага сборки. Первый Выполнить оболочку и второй Выполнить сканер Sonarqube Отказ
Шаг раковины – запускать CIBUILD Сценарий NPM и последний, чтобы вызвать анализ отчета о покрытии. Как упоминалось выше, свойства сонара также могут быть установлены в конфигурации сборки. Пример Конфигурации сборки:
Это все. Теперь сборка может быть вызвана с помощью Построить сейчас Меню на проектах Главная страница.
Наконец, при посещении сервера Sonarqube детали проекта должны быть видны со всеми метриками, захваченными из отчета о покрытии кода. Пример:
Это только первый шаг к созданию более здорового кодового базы. Создание Дженкинса может быть дополнительно расширена для создания конвейера для улучшения контроля и гранулированных модификаций.
Первоначально опубликовано medium.com 16 сентября 2017 года.
Оригинал: “https://www.freecodecamp.org/news/steps-you-should-take-to-build-a-healthy-angular-project-84eea6608d5f/”