SonarQube_Getting_Started_Project

根據之前的文章SonarQube_Server與Scanner安裝架設完畢之後,根據頁面的引導可以很快速的進行第一次的Scan

SonarQube提供五種版本控管或是手動上傳原始檔案,因想要快速掃描的關係這邊先選擇Manually 創建專案就好

建立第一個Project進行掃描

New Project

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project.png

輸入專案名稱

專案名稱:這邊建議直接跟GitLab名稱一樣就好,
Project Key:主要用於不知道...
Main branch name:如果是使用GitLab就填寫目前GitLab主要的名稱就好(我們GitLab是使用Master)

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-1.png

選擇程式原始碼的來源,快速掃描本機的話就選擇Locally這邊就會決定未來要在哪邊進行Scanner的位置

Locally:選擇這個後續要把最新的專案下載到該SonarQube伺服器並且手動在命令字元下指令進行SonarQube Scanner
With GitLab CI:結合 GitLab Runner,後續SonarQube Scanner就會交由GitLab Runner伺服器進行(取得最新程式碼也是由GitLab Runner進行)

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-2.pngk

建立分析的Token

這邊預設30 Days,但其實為了後續自動化方便,我會偏向設定該專案無期限或是設定Global Analysis Token讓所有的專案都使用同一個Token方便管理

資訊

SonarQube是使用架設在內網,所以採取偷懶的方式進行。

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-3.png

重點

建立完成後請將Token記錄下來後面就取得不到了。

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-4.png

第一次進行掃描使用.Net Freamwork為例

注意請參考SonarQube_Server與Scanner安裝把Scanner、MSBuile.exe都準備好下面會需要使用到。

資訊

DEMO的範例我已經把MSBuild.exe設定為環境變數,是否要設定取決於你自己,在正式環境我會選擇指定絕對路徑進行操作

一切準備就緒後只要跟著頁面的指令一行一行執行即可。

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-5.pngki

大致上流程如下

宣告專案要進行SonarQube掃描,他會在該專案底下建立.sonarqube資料夾

結果如下

PS D:\web\ysleip> SonarScanner.MSBuild.exe begin /k:"TEST" /d:sonar.host.url="http://127.0.0.1:9000" /d:sonar.login="sqp_5b5909e4ebaa0e80be07ff24fe619afe9ed730a3"
SonarScanner for MSBuild 5.5.3
Using the .NET Framework version of the Scanner for MSBuild
Pre-processing started.
Preparing working directories...
18:17:27.295  Updating build integration targets...
18:17:28.051  Fetching analysis configuration settings...
18:17:37.267  Provisioning analyzer assemblies for cs...
18:17:37.27  Installing required Roslyn analyzers...
18:17:41.769  Provisioning analyzer assemblies for vbnet...
18:17:41.77  Installing required Roslyn analyzers...
18:17:41.822  Pre-processing succeeded.

使用MSBuild.exe進行專案建置,確保專案無誤。


    0 個警告
    0 個錯誤

經過時間 00:02:22.29

啟動Scanner進行源碼掃描

執行完指令後 Scanner就會開始進行分析,頁面上也會顯示就靜靜等待吧。


PS D:\web\ysleip> SonarScanner.MSBuild.exe end /d:sonar.login="sqp_5b5909e4ebaa0e80be07ff24fe619afe9ed730a3"
SonarScanner for MSBuild 5.5.3
Using the .NET Framework version of the Scanner for MSBuild
Post-processing started.

.................... 略 ....................

結果

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-6.png

掃描過程中因為是在本機測試,可以觀察到記憶體跟硬碟都有大量的讀取。

200-Areas/210-工程師修煉/SonarQube/resource/SonarQube_Getting_Started_Project-7.png

後續閱讀

List
from "200-Areas/210-工程師修煉/SonarQube"
where dg-publish = true
sort file.ctime