sonar安裝及配置
linux服務器上安裝sonar
準備環境,安裝JDK,注意安裝1.8及以上,如果是openjdk,需要devel版本。
下載sonar的zip包,如sonarqube-7.3.zip,然後解壓到/usr/local。
修改/config/sonar.properties文件,主要是數據庫配置:sonar.jdbc.username=xx sonar.jdbc.password=yy sonar.jdbc.url=zz 都有示例。其他的配置看官方文檔。有個參數sonar.web.port是指定sonar web端口號的。
因爲不能root用戶啓動,需要創建一個用戶,把sonar所在的目錄授權給此用戶。注意權限是700,chmod 700 ./sonarqube-7.3
最後一步,啓動,bin/linux-x86-64/sonar.sh start,也可以restart重啓,stop停止。
sonar功能的配置使用
訪問:http://localhost:9000 ,默認用戶名及密碼是 admin/admin 。
安裝插件,默認就好。按需求選擇git、SonarJava、Chinese Pack 語言包。
默認情況下,不用登陸也可以訪問,只是不能配置。需要強制登陸,則配置“配置-通用設置-權限”,將Force user authentication勾上。
默認情況下,sonar-administrators的用戶是不能“執行分析”的。需要在“配置-權限-全局權限”把此項勾上。
創建一個普通用戶,位置在“配置-權限-用戶”,可選在另外一個位置“配置-權限-羣組”配置具體的權限。
sonarscanner和maven插件,一般就是這兩種使用方式,可以配合jenkins一起使用。
配合Maven使用
準備maven的配置文件settings.xml 。
常規配置私服略去。
加一個sonar的scanner的pluginGroup:
<pluginGroups>
<pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
</pluginGroups>
配置一個profile,裏面主要是填寫properties,sonar.host.url和login。
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.host.url>
http://localhost:9000
</sonar.host.url>
<sonar.login>sonar的令牌</sonar.login>
</properties>
</profile>
配置文件中的“sonar的令牌”需要在sonar的web頁面去生成,在用戶列表上的“令牌”列。注意的是,只顯示一次,需要複製記錄下來。
到此,就可以正常掃描並上傳結果了。命令是正常的mvn命令後面加sonar:sonar就可以了,如"mvn install sonar:sonar"。
配合jenkins工作
安裝jenkins。其實就是下載一個jenkins的war包,啓動就成了。
配置jenkins插件。也可以選擇在啓動後在web頁面上安裝默認插件就行,至少需要git、maven插件。
配置git、maven環境。主要是git的密鑰,maven的setting.xml文件,都略過。
有“SonarQube Scanner for Jenkins”插件的可以用的,但是因爲這個插件在掃描多模塊項目的時候,配置薦比較死板,所以這方式不採用。
組合maven的sonar插件,就是正常的項目編譯Job裏面的構建環節上的maven目標的最後加上sonar:sonar就行,如“install sonar:sonar”
可以定時構建,也可以手工點任務。
注意
內嵌數據庫只能用於測試場景
sonar不支持mariadb,報錯Unsupported mysql version: 5.5. Minimal supported version is 5.6.
先配置好數據庫,再啓動,否則會先使用H2數據庫,再遷移,就有可能會報錯。
sonar下載:wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-7.3.zip
sonar安裝及配置
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.