Zadig - SonarQube,爲開發過程安全保駕

圖片

高質量的代碼、快速拉起的環境基礎設施、充分的業務質量保證... 每一點都能爲產品成功交付加分。在開發源頭對代碼質量投入,不管是識別代碼風險防微杜漸,還是建立團隊研發規範,都是一件收益遠大於成本的事情。

社區小夥伴對此的呼聲也越來越高,在六一兒童節發佈的 v1.12.0 版本中,Zadig 支持集成掃描工具啦,爲代碼質量提供掃描服務,爲開發過程安全保駕。

本文以最爲常用的 SonarQube 掃描工具和開源 Zadig 代碼倉爲例爲大家進行介紹。 

項目背景

如何使用

只需要 3 步,便可在 Zadig 中獲得代碼掃描的能力,具體操作如下。

系統管理員:集成 SonarQube

圖片

圖片

圖片

圖片

工程師:配置代碼掃描

進入項目,新建代碼掃描。

圖片

圖片

配置細節如下:

名稱:zadig-scan

掃描工具:SonarQube

掃描環境:sonar:latest

sonar 地址:上一步中集成的 SonarQube 服務器地址

代碼信息:Zadig 代碼庫

參數配置:參考 SonarQube 文檔 [3],本例中配置內容如下

# Sonar 參數
sonar.projectKey=zadig-pkg
sonar.projectName=zadig-pkg
sonar.sources=./pkg
sonar.go.file.suffixes=.go

其他代碼掃描工具可參考 自定義構建鏡像 [4],先將掃描工具集成進去,掃描工具選擇其他,掃描環境中指定自定義的鏡像,輸入自定義掃描腳本即可實現。

工程師:執行並分析結果

點擊 執行 按鈕觸發代碼掃描運行。

圖片

待代碼掃描任務執行完畢,點擊 查看 鏈接。

圖片

系統會自動跳轉到 SonarQube 系統中。工程師可查看掃描結果並據此對代碼中的問題進行修復,做到有的放矢,從源頭提高代碼質量,降低交付風險。

圖片

Webhook 一觸即發

除了在 Zadig 上手動執行掃描任務檢查代碼質量,還可以基於相關代碼變更事件配置觸發器,利用 Webhook 的能力自動執行代碼掃描。

圖片

圖片

圖片

掃描結果及時反饋

代碼庫變更自動觸發代碼掃描後,掃描結果將會反饋到代碼倉庫中,目前支持 GitLab 代碼源,其他代碼源也進一步支持中。及時的代碼質量反饋可以爲團隊做代碼審查、代碼合併等提供數據參考,讓質量溶於每一行代碼。

圖片

此外,代碼掃描結果自動通知到 IM 的功能也在計劃中,無需切換系統即可便捷地獲得代碼質量反饋結果,打通工程師日常開發工作的最後一公里。

Zadig,讓工程師更專注創造!

歡迎加入 開源吐槽羣🔥

參考鏈接:

[1] https://github.com/koderover/zadig

[2] https://github.com/koderover/zadig/tree/main/pkg

[3] https://docs.sonarqube.org/latest/analysis/analysis-parameters/

[4] https://docs.koderover.com/zadig/v1.12.0/settings/custom-image/

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/od7wmTIrCXATxRDzXOlnJg