Установка и настройка SonarQube
Я раньше использовал codelyzer, и в некотором смысле он очень похож на tslint.
Однако я хотел протестировать что-то новое и подумал, что на этот раз давайте попробуем SonarQube.
Он может интегрироваться с существующим рабочим процессом для обеспечения непрерывной проверки кода в ветках вашего проекта и получения запросов.
Он имеет серверный компонент, где вы можете создавать проекты и применять конфигурации, такие как добавление плагинов и обновление существующих.
И еще есть компонент сканера, который сканирует вашу кодовую базу и отправляет результат на сервер для отображения на панели мониторинга SonarQube.
Существует несколько версий SonarQube, но мы собираемся использовать версию сообщества, которая является бесплатной и с открытым исходным кодом.
Так что без дальнейших церемоний, давайте к делу.
Установка
Документация действительно отличная, однако вскоре я понял, что мне нужно установить множество зависимостей, чтобы это все работало.
Я подумал о том, как избежать лишних установок, и все стало проще, когда я увидел образ Docker.
В Docker Hub вы можете найти информацию, необходимую для начала работы, но для целей этой статьи я просто использую одну команду, чтобы начать работу.
docker run -d --name sonarqube -p 9000:9000 sonarqube
Запустит контейнер в фоновом режиме, а затем выставит порт 9000 на хосте.
После этого вам нужно подождать несколько минут для запуска сервера.
Sonarqube пароль и логин по умолчанию
Создание проекта
Я не хочу углубляться в SonarQube, но проект представляет собой базу кода, где вы можете увидеть результаты сканирования, выполненного сканером.
После входа в систему нажмите кнопку «create a new project» в центре страницы, затем введите уникальный ключ проекта и отображаемое имя.
На следующей странице введите имя для вашего токена проекта.
Это ключ, который сканер будет использовать для аутентификации на сервере и отправки результатов сканирования.
Запишите этот ключ, так как вы никогда его не больще увидите, когда уйдете с этой страницы.
Нажмите Continue, и вы увидите экран, где вы можете указать конфигурацию вашего проекта.
Выберите необходимые компоненты.
Скачивание сканера
На этом этапе вам необходимо скачать сканер и разархивировать его в папку с именем sonarqube на вашем диске.
Я обычно использую инструменты c:\ для такого рода использования (замените его тем, что вы использовали, если вы решили разархивировать его в другом месте).
После этого откройте файл конфигурации сканера с именем sonar-scanner.properties из папки c:\tools\sonarqube\config и раскомментируйте строку, в которой указан адрес сервера.
#Configure here general information about the environment, such as SonarQube server connection details for example
#No information about specific project should appear here
#----- Default SonarQube server
sonar.host.url=http://localhost:9000
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
Запуск сканирования
Как только вы закончите, вы готовы к работе.
Запустите приведенную ниже команду из корня проекта и дождитесь окончания сканирования.
C:\tools\sonar\bin\sonar-scanner.bat -D"sonar.projectKey=fp" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=**********************************" -D"sonar.exclusions=node_modules/**/*"
💡 На последнем шаге, когда вы загрузили zip-файл сканера, команда, которую необходимо выполнить, записана для того, чтобы вы были готовы к работе, просто добавьте папку exclude, чтобы избежать анализа кода во внешних библиотеках.
ℹ️ Не забудьте запустить npm install или yarn, если вы только что раздвоили базу кода из своего git-репозитория. Я столкнулся с несколькими ошибками, прежде чем понял, что они не установлены, и они используются сканером.
- ☸️ Как установить Sonarqube в Kubernetes
- 🖴 Резервное копирование и восстановление контейнерных баз данных PostgreSQL | Kubernetes | SonarQube
- 🦟 Как изменить статус проекта в SonarQube
- ☸️ Изучаем Kubernetes: 5 лучших практик безопасности
- 🦟 11 интересных инструментов для аудита и управления качеством кода