最近又在倒騰 DevOps,從書(shū)中熟悉了下 Sonarqube 的集成,如下所示:

書(shū)中的示例中,代碼倉(cāng)庫(kù)使用 SVN,持續(xù)集成工具使用 Jenkins,在自動(dòng)化集成的同時(shí),可以自動(dòng)創(chuàng)建并執(zhí)行軟件測(cè)試。(我這里代碼倉(cāng)庫(kù)使用的是 Gitlab)
具體流程:
- 首先在 SonarQube 中配置相應(yīng)的規(guī)則,
- 然后 Jenkins 對(duì)項(xiàng)目完成集成后自動(dòng)調(diào)用 SonarQube 進(jìn)行項(xiàng)目的質(zhì)量檢測(cè),
- 完成檢測(cè)后,SonarQube 將統(tǒng)計(jì)分析結(jié)果進(jìn)行頁(yè)面話展示。
我這邊把三個(gè)環(huán)境都建好了,

gitlab

SonarQube

Jenkins
SonarQube 還可以將代碼掃描前置。開(kāi)發(fā)人員在編碼工具中編碼的同時(shí),使用 snoarlint 進(jìn)行本地分析,在本地環(huán)境完成自動(dòng)構(gòu)建,自動(dòng)執(zhí)行 SnoarQube 掃描并分析,分析報(bào)告發(fā)送至 SonarQube 服務(wù)器進(jìn)行處理。代碼掃描前置的優(yōu)點(diǎn)在于可以更好地實(shí)現(xiàn)代碼規(guī)范和更快地處理代碼“異味”,從而降低技術(shù)負(fù)債。
搭建完成之后,準(zhǔn)備聯(lián)合起來(lái)玩一玩,后面準(zhǔn)備上傳代碼,并測(cè)試了,哈哈哈,期待聯(lián)動(dòng)!