-
Notifications
You must be signed in to change notification settings - Fork 0
SonarQube integráció
A célom az, hogy Continous Code Quality as a Service-ként fusson, tehát ne kelljen letöltenem a SonatQubeot és on-premise alkalmazásként futtatnom.
Először authorizáltam magam a SonarCube.com-on a github felhasználói fiókom segítségével. Ezt követően létre kellett hoznom egy Token-t, amit majd a CI build konfigurációjában megadok.
A következő screen shoton a token biztonsági okokból nem látszik:
Megtudhattam továbbá az Organizations fülön, hogy megfelelően sikerült az összeköttetés a GitHub és a SonarQube közt, hiszen látszik az organization, ami a githubon létrejött:
Elöször titkositanom kellett a tokent biztonsági okokból. Ehez a travis egy Ruby programot adott ki, szóval szükségem volt a ruby-ra hogy a gem-mel telepithessem a travis-t. Mivel Windows gépen dolgozom, innen tudtam leszedni a ruby-t: http://rubyinstaller.org/downloads/
Miután sikeresen telepitettem, a gem-et felhasználva telepitettem a travis-t:
Ezt követően a _travis encrypt SOMEVAR=”secret” –add _ paranccsal hozzáadtam a .yml file-hoz a megfelelő secretet. Az organization-t kimásoltam a SonarQube megfelelő oldaláról(fentebb irtam már róla), majd elkészitettem a végleges travis.yml file-t:
SonarQube On-premise integráció Ahoz hogy On-premise tudjuk futtatni a SonarQube-ot, szükség volt egy SonarQube service-re ami fut a gépen. Ez kipublikálja alapértelmezetten a localhost:9000 cimre a sonarQube UI-át. Emellett interface-t biztosit az analyzereknek, hogy publikálhassák a kódról szerzett tudást.
Miután elkészitettem a service-t kellett egy C# analyzer, amit feltelepitettem a gépre. Már csak pár konfigurációs lépésre volt szükség, amit egy előre elkészitett file-ba kellett kitölteni.
Ez a sonar-project.properties file, és a következő értékeket állitottam be rajta: sonar.projectKey=my:UnitySteer sonar.projectName=Unity Steer sonar.projectVersion=1.0 sonar.sources=.
Mivel a sources a . elérési útra mutat, ezért a project gyökerébe helyeztem el a file-t.
Igy, hogy a környezet készen áll, már csak 3 parancsot kell kiadni, és elkészül az analizis. Elöször el kell inditani az analyzert:
SonarQube.Scanner.MSBuild.exe begin
Majd a buildet MSBuild.exe /t:Rebuild
És végül leállitjuk a sonar scannert: SonarQube.Scanner.MSBuild.exe end