Почему SonarQube?

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

Вы можете проверить веб-сайт SonarQube, чтобы узнать больше об этом. Здесь мы обсуждаем конфигурацию SonarQube в проекте iOS (Swift).

Шаги по интеграции

Для запуска SonarQube нам нужны некоторые другие инструменты, такие как Java, Swift Lint, OCLint. Поэтому мы сначала установили их, а затем настроили Sonar для Swift.

Установить инструменты

Чтобы установить какой-либо инструмент, мы используем Home-brew, поэтому мы сначала устанавливаем его (запускаем все эти команды на терминале).

Домашнее пиво

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh"

Next steps:
Run these two commands to add Homebrew to your PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/xxx/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"

ДЖАВА

Первый шаг — установить Java на ваш Mac.

Загрузите установщик DMG для macOS x64(jdk-11.0.15_osx-x64_bin.dmg) с официального сайта Oracle.

Откройте dmg, следуя инструкциям, если все прошло хорошо, вы попадете на этот экран.

Xcкрасиво

sudo gem install xcpretty

СвифтЛинт

brew install SwiftLint

Портной

brew install tailor

намазать

sudo gem install slather

OCLint

brew tap oclint/formulae
brew install oclint

Xcpretty Fix

git clone https://github.com/Backelite/xcpretty.git
cd xcpretty
git checkout fix/duration_of_failed_tests_workaround
gem build xcpretty.gemspec
sudo gem install - both xcpretty-0.2.2.gem

Установить Python

https://www.python.org/downloads/release/python-3107/

Ящерица

sudo pip install lizard

Настройка SonarQube

Шаг 1. Настройте SonarQube и SonarScanner

  1. Загрузите SonarQube с диска (вы также можете скачать с https://www.sonarqube.org/downloads/), но в файле диска я внес некоторые изменения, а также Backlite для SonarSwift интегрирован в zip.
  2. Разархивируйте загруженный файл.
  3. Переместите загруженную папку в папку /Applications.

Шаг 2. Обновление .bash_profile с новым путем

  1. Запустите терминал и выполните следующую команду.
open -e ~/.bash_profile

2. Приведенные выше команды откроют ваш bash_profile в редакторе.

3. Скопируйте и вставьте следующие строки.

# Sonar Setting
export PATH=$PATH:/Applications/SonarScanner/bin
export PATH=$PATH:/Applications/SonarQube/bin

4. Сохраните файл

Шаг 3. Запустите сервер Sonar

sh /Applications/SonarQube/bin/macosx-universal-64/sonar.sh console

Если вы видите, что «SonarQube запущен», значит, настройка сонара выполнена правильно. Теперь оставьте этот терминал как есть и откройте другой терминал, чтобы запустить сонарный сканер.

Шаг 4. Запустите сонарный сканер

  1. Загрузите файл sonar-project.properties с этого URL и поместите этот файл в корневой каталог вашего проекта.
  2. Обновите сведения о проекте, схеме и папке в соответствии с вашим проектом.
  3. Загрузите run-sonar-swift.sh с этого URL и поместите этот файл куда угодно (например, в Документы, на рабочий стол).
  4. Теперь откройте терминал и сканер с помощью скрипта
/User/Documents/run-sonar-swift.sh -v

«ВЫПОЛНЕНИЕ УСПЕШНО» показывает, что все инструменты работают успешно и отчет загружен на сервер.

Шаг 5. См. отчет сонара

  1. Откройте адрес http://localhost:9000/projects в любом браузере.
  2. Войдите, используя имя пользователя: admin и пароль: admin
  3. Здесь вы увидите свой проект.

Примечание:

  1. Прежде чем применять сонар в основном проекте, сначала запустите его в демо-версии. Это гарантирует, что ваш сонар в полном порядке.
  2. В зависимости от системы и проекта вы можете столкнуться с различными ошибками. Пожалуйста, отправьте мне сообщение Linked, я постараюсь ответить на них.

Справочник по Git

https://github.com/Idean/sonar-swift