Sonar-Runner общается с локальной базой данных
Я пытаюсь понять сонара-бегуна http://docs.sonarqube.org/display/SONAR/Installing+and+Configuring+SonarQube+Runner. У меня есть центральный гидролокатор, у которого есть база данных на том же хосте. Как и ожидалось, я запускаю сонар-бегун от своих клиентов в многочисленных окнах и ожидаю, что они загрузят данные в куб гидролокатора.
Мой sonar-project.properties выглядит примерно так:
# Required metadata
sonar.projectKey=a:b
sonar.projectName=b-1.0
sonar.projectVersion=1.0
# Comma-separated paths to directories with sources (required)
sonar.sources=lib
# Language
sonar.language=py
# Encoding of the source files
sonar.sourceEncoding=UTF-8
# Host of the sonar url
sonar.host.url=http://myserver:9000/msde/sonar/webapp
Я ожидал, что мой клиент выполнит некоторый анализ и загрузит данные непосредственно на сервер, используя некоторые веб-сервисы, предназначенные для загрузки. Однако я вижу следующее в моих журналах
10:42:00.678 INFO - Apply project exclusions
10:42:00.682 WARN - H2 database should be used for evaluation purpose only
10:42:00.682 INFO - Create JDBC datasource for jdbc:h2:tcp://localhost/sonar
10:42:00.755 INFO - Initializing Hibernate
Вопрос
- Должен ли я настраивать детали базы данных в sonar-project.properties? Я ожидал, что он будет использовать какой-то веб-сервис из URL-адреса сонара для загрузки метрик, но есть несколько проблем с раскрытием деталей базы данных. Я хотел, чтобы база данных была внутренней по отношению к серверу и не была доступна для различных клиентов.
- Это также означает, что я должен размещать детали базы данных в различных файлах свойств в нескольких проектах, поэтому затраты на изменение деталей центральной базы данных огромны.
2 ответа
Вам нужно отредактировать файл $SONARQUBE_RUNNER_HOME/conf/sonar-runner.properties, чтобы он указывал на правильный экземпляр базы данных. И это единственный файл, который вам нужен для всех ваших проектов.
Если вы используете MySQL, в HOME_SONAR_RUNNER\conf\sonnar-runner.properties
файл, вы должны раскомментировать строку, связанную с MySQL, оставив строку как это:
sonar.jdbc.url=jdbc:mysql://
localhost
: 3306 / сонар useUnicode= верно и characterEncoding=utf8
В том же файле не забудьте прокомментировать следующее:
#
sonar.host.url = HTTP: // localhost
: 9000
Сохраните файл и запустите снова.