Jenkins + Jshint(Jslint) Или Посмотрите Метрики Javascript На Jenkins

Привет. Получил такое задание, в принципе все понятно из названия темы.

Следующий пост расскажет вам, как я этого добился, шаг за шагом.

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

В ходе исследования прояснились многие вопросы.

Суть задачи более подробно.

Проекту Jenkins-e нужно было отображать график и небольшую статистику по метрикам JavaScript-кода из проекта.

При этом обязательным условием анализа js-кода было использование только JsHint, а значит JsLint не работает. Начался сбор информации, так как такое слово я услышал впервые.

У Дженкинса огромная библиотека плагинов и, соответственно, кто-то уже задавал этот вопрос.

Итак, сначала я поискал плагин Jenkins. Плагин был успешно найден, но мне не удалось прикрепить его к серверу.

Вот ссылка на плагин, там же есть информация как его установить.

http://www.boxuk.com/labs/jslint-jenkins-plugin/ Дальнейшие поиски привели меня к nodeJs и его плагину (npm) jshint. Далее пошагово, что нужно сделать, чтобы получить анализ кода на Jenkins с помощью JsHint.

  1. Установка nodejs
  2. Установите jshint-npm:

    npm install -g jshint

    Документация: https://npmjs.org/package/jshint
  3. Чтобы игнорировать ненужные папки и файлы, создайте файл с именем

    .

    jshintignore

    например, мы хотим игнорировать все файлы из следующего каталога src/main/webapp/resources/js/lib/ затем в файле .

    jshintignore напишем это

    src/main/webapp/resources/js/lib/

  4. Файл .

    jshintignore можно настроить с помощью регулярных выражений «миниматч».

    https://github.com/isaacs/minimatch

  5. Устанавливаем Violation-Plugin для Jenkins, он поддерживает (читает) различные метрики кода, включая jslint/jshint https://wiki.jenkins-ci.org/display/JENKINS/Violations
  6. После установки плагина перезапустите Jenkins, зайдите в конфигурацию проекта и найдите там флаг «нарушения».

    Открываем его и видим, что он уже может читать xml-файл с метриками кода jslint.

  7. И наконец, самая главная команда, ради которой и затеялись все эти танцы с бубном.

    Эту команду мы пишем в конфигурации проекта как «команда запуска оболочки».



    jshint .

    /src/main/webapp/resources/js --jslint-reporter > .

    /target/jslint.xml

    запускаем в качестве параметра ранее установленный jshint-npm и передаем на анализ папку с js-файлами, при этом говорим, что нам нужно сформировать отчет в стиле jslint, так как наш плагин-нарушитель умеет читать только jslint-report. и успешно записать все в файл по указанному пути.

  8. В нарушении-плагине указываем путь к нашему

    .

    /target/jslint.xml

  9. Все готово! Вы можете запустить его и наслаждаться графиком и статистикой.

Надеюсь, это кому-то пригодится.

Прошу всех новичков обращаться ко мне, постараюсь регулярно что-нибудь писать: j-web-dev.blogspot.com/ P.S. Не будьте слишком строги к блогу, никто не рождается профессионалом.

) Теги: #java #JavaScript #jenkins #jslint #JavaScript #java

Вместе с данным постом часто просматривают: