日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

微服務(wù)部署—配置Jenkins+SonarQube進(jìn)行代碼質(zhì)量檢查

來源: 責(zé)編: 時(shí)間:2023-10-13 14:36:32 304觀看
導(dǎo)讀SonarQube是一款靜態(tài)代碼分析、代碼質(zhì)量度量和漏洞檢測的開源代碼質(zhì)量管理平臺,它提供了許多功能,包括靜態(tài)代碼分析、代碼覆蓋率、復(fù)雜度分析、漏洞檢測等。SonarQube可以集成到許多流行的編程語言和集成開發(fā)環(huán)境中,幫助

XsP28資訊網(wǎng)——每日最新資訊28at.com

SonarQube是一款靜態(tài)代碼分析、代碼質(zhì)量度量和漏洞檢測的開源代碼質(zhì)量管理平臺,它提供了許多功能,包括靜態(tài)代碼分析、代碼覆蓋率、復(fù)雜度分析、漏洞檢測等。SonarQube可以集成到許多流行的編程語言和集成開發(fā)環(huán)境中,幫助開發(fā)人員創(chuàng)建高質(zhì)量的軟件項(xiàng)目。SonarQube以及依賴環(huán)境軟件的安裝已經(jīng)在此系列文章的第一篇寫過,這里只介紹如何配置和使用Jenkins+SonarQube進(jìn)行代碼質(zhì)量檢查。XsP28資訊網(wǎng)——每日最新資訊28at.com

登錄http://ip:19000 ,默認(rèn)用戶名密碼:admin/admin ,第一次登錄會(huì)提示更改密碼,設(shè)置一個(gè)自定義密碼即可。配置>應(yīng)用市場,安裝中文插件,這里選擇Chinese Pack LOCALIZATION(中文簡體),下面那個(gè)是中文繁體。
  • 如果安裝時(shí)出現(xiàn)錯(cuò)誤,一般是安裝的插件和當(dāng)前SonarQube版本不兼容,此時(shí)需要到插件官網(wǎng)下載SonarQube對應(yīng)版本的插件放到,我們的目錄下/data/docker/ci/sonarqube/extensions/downloads,然后通過 配置>系統(tǒng)>重啟服務(wù)器,即可使插件生效。

XsP28資訊網(wǎng)——每日最新資訊28at.com

3、安裝Java質(zhì)量檢查插件,在應(yīng)用市場搜索java,然后在列表中安裝Checkstyle、Findbugs、PMD。

XsP28資訊網(wǎng)——每日最新資訊28at.com

4、配置 > SCM,關(guān)閉禁用SCM傳感器(Disable the SCM Sensor)

XsP28資訊網(wǎng)——每日最新資訊28at.com

5、配置 > 權(quán)限 > 用戶,新建一個(gè)用戶,在用戶列表頁點(diǎn)擊令牌,執(zhí)行生成token,用于配置在Jenkins和SonarQube交互。根據(jù)自己的需求設(shè)置過期時(shí)間,或者不過期。

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

6、切換到Jenkins配置界面,將生成的token配置到Jenkins,系統(tǒng)管理 > Credentials > 全局 > Add Credentials ,選擇Secret text,在Secret填寫上面生成的token,然后點(diǎn)擊Create,保存token之后,就可以在SonarQube Servers添加這個(gè)token使用。

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

7、回到SonarQube界面,配置 > 項(xiàng)目 > 管理 > 創(chuàng)建項(xiàng)目,填寫信息執(zhí)行創(chuàng)建。

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

8、項(xiàng)目創(chuàng)建成功后,在項(xiàng)目列表點(diǎn)擊項(xiàng)目名稱,進(jìn)入到項(xiàng)目配置界面。選擇使用Jenkins > 選擇 DevOps 平臺(選擇GitLab,根據(jù)項(xiàng)目實(shí)際情況選擇) 。

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

9、根據(jù)提示,查看在Jenkins中的配置步驟。
  • 點(diǎn)擊配置分析

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 創(chuàng)建流水線作業(yè)

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 創(chuàng)建一個(gè) GitLab Webhook

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 創(chuàng)建 Jenkinsfile,選擇Maven,然后會(huì)在下方出現(xiàn)針對此工程的Maven配置,復(fù)制此配置信息,稍后配置到Jenkins任務(wù)中。

XsP28資訊網(wǎng)——每日最新資訊28at.com

10、切換到Jenkins配置界面,我們新建一個(gè)流水線任務(wù)。

XsP28資訊網(wǎng)——每日最新資訊28at.com

11、SonarQube只提供了SonarQube檢查的流水線腳本,我們直接將下載GitLab代碼等都放到流水線任務(wù)中,這樣比較簡單。
  • 和之前的任務(wù)一樣,選擇“丟棄舊的構(gòu)建”,設(shè)置保持構(gòu)建的最大個(gè)數(shù)為5

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 直接到“流水線”,選擇Pipeline script

XsP28資訊網(wǎng)——每日最新資訊28at.com

流水線腳本如下:XsP28資訊網(wǎng)——每日最新資訊28at.com

node {    def mvnHome    stage('Preparation') { // for display purposes        // Get some code from a GitHub repository        echo "checkout from GitLab"        checkout scmGit(branches: [[name: '*/main']], extensions: [], userRemoteConfigs: [[credentialsId: 'git_username', url: 'http://127.0.0.1:9091/test/test.git']])        // Get the Maven tool.        // ** NOTE: This 'M3' Maven tool must be configured        // **       in the global configuration.        mvnHome = tool 'maven_j'    }    stage('SonarQube Analysis') {        echo "sonar test code"        withEnv(["MVN_HOME=$mvnHome"]) {            withSonarQubeEnv() {                sh "'$MVN_HOME/bin/mvn' clean verify sonar:sonar -Dsonar.projectKey=sonarTest -Dsonar.projectName='Sonar質(zhì)量檢查'"            }        }    }    stage('Build') {        echo "build test code"        // Run the maven build        withEnv(["MVN_HOME=$mvnHome"]) {            if (isUnix()) {                sh '"$MVN_HOME/bin/mvn" -Dmaven.test.failure.ignore clean package'            } else {                bat(/"%MVN_HOME%/bin/mvn" -Dmaven.test.failure.ignore clean package/)            }        }    }    stage('Results') {        echo "end sonar testcode"        //junit '**/target/surefire-reports/TEST-*.xml'        // archiveArtifacts 'target/*.jar'    }}
12、在任務(wù)左側(cè)點(diǎn)擊立即構(gòu)建
  • 立即構(gòu)建

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 流水線任務(wù)可以在右側(cè)顯示階段視圖

XsP28資訊網(wǎng)——每日最新資訊28at.com

  • 查看構(gòu)建日志:點(diǎn)擊立即構(gòu)建之后,下方會(huì)出現(xiàn)進(jìn)度條,點(diǎn)擊進(jìn)度條就可以進(jìn)入構(gòu)建日志界面。

XsP28資訊網(wǎng)——每日最新資訊28at.com

XsP28資訊網(wǎng)——每日最新資訊28at.com

13、構(gòu)建成功后,下方會(huì)給出構(gòu)建成功提示,此時(shí)SonarQube服務(wù)器就可以看到我們項(xiàng)目的檢查結(jié)果。

XsP28資訊網(wǎng)——每日最新資訊28at.com

14、在SonarQube頁面查看代碼質(zhì)量檢查結(jié)果

XsP28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-13277-0.html微服務(wù)部署—配置Jenkins+SonarQube進(jìn)行代碼質(zhì)量檢查

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。郵件:2376512515@qq.com

上一篇: Java機(jī)器視覺:利用OpenCV進(jìn)行圖像處理和識別

下一篇: 如何搭建高性能廣告技術(shù)需求方平臺

標(biāo)簽:
  • 熱門焦點(diǎn)
  • 女孩租房開2小時(shí)空調(diào)用完100元電費(fèi)引熱議:5級能耗惹不起 月薪過萬電費(fèi)也交不起

    近日,江蘇蘇州一女孩租房當(dāng)天充值了100元電費(fèi),開著空調(diào)不到2小時(shí)發(fā)現(xiàn)電費(fèi)已用完。對于為什么這個(gè)快,房東表示,電表壞了這種情況很多,之前也遇到過,給租客換
  • 線程通訊的三種方法!通俗易懂

    線程通信是指多個(gè)線程之間通過某種機(jī)制進(jìn)行協(xié)調(diào)和交互,例如,線程等待和通知機(jī)制就是線程通訊的主要手段之一。 在 Java 中,線程等待和通知的實(shí)現(xiàn)手段有以下幾種方式:Object 類下
  • CSS單標(biāo)簽實(shí)現(xiàn)轉(zhuǎn)轉(zhuǎn)logo

    轉(zhuǎn)轉(zhuǎn)品牌升級后更新了全新的Logo,今天我們用純CSS來實(shí)現(xiàn)轉(zhuǎn)轉(zhuǎn)的新Logo,為了有一定的挑戰(zhàn)性,這里我們只使用一個(gè)標(biāo)簽實(shí)現(xiàn),將最大化的使用CSS能力完成Logo的繪制與動(dòng)畫效果。新logo
  • 多線程開發(fā)帶來的問題與解決方法

    使用多線程主要會(huì)帶來以下幾個(gè)問題:(一)線程安全問題  線程安全問題指的是在某一線程從開始訪問到結(jié)束訪問某一數(shù)據(jù)期間,該數(shù)據(jù)被其他的線程所修改,那么對于當(dāng)前線程而言,該線程
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時(shí)候了!學(xué)弟,最近學(xué)習(xí)的怎么樣啊 了不起學(xué)弟:最近學(xué)習(xí)的還不錯(cuò),每天都在學(xué)習(xí),每天都在進(jìn)步! 了不起:那你最近學(xué)習(xí)的什么呢? 了不起學(xué)弟:最近在學(xué)習(xí)C
  • 猿輔導(dǎo)與新東方的兩種“歸途”

    作者|卓心月 出品|零態(tài)LT(ID:LingTai_LT)如何成為一家偉大企業(yè)?答案一定是對“勢”的把握,這其中最關(guān)鍵的當(dāng)屬對企業(yè)戰(zhàn)略的制定,且能夠站在未來看現(xiàn)在,即使這其中的
  • 年輕人的“職場羞恥感”,無處不在

    作者:馮曉亭 陶 淘 李 欣 張 琳 馬舒葉來源:燃次元“人在職場,應(yīng)該選擇什么樣的著裝?”近日,在網(wǎng)絡(luò)上,一個(gè)與著裝相關(guān)的帖子引發(fā)關(guān)注,在該帖子里,一位在高級寫字樓亞洲金
  • 自研Exynos回歸!三星Galaxy S24系列將提供Exynos和驍龍雙版本

    年初,全新的三星Galaxy S23系列發(fā)布,包含Galaxy S23、Galaxy S23+和Galaxy S23 Ultra三個(gè)版本,全系搭載超頻版驍龍8 Gen 2,雖同樣采用臺積電4nm工藝制
  • 三星Galaxy Z Fold5官方渲染圖曝光:13.4mm折疊厚度依舊感人

    據(jù)官方此前宣布,三星將于7月26日在韓國首爾舉辦Unpacked活動(dòng),屆時(shí)將帶來帶來包括Galaxy Buds 3、Galaxy Watch 6、Galaxy Tab S9、Galaxy Z Flip 5、
Top 主站蜘蛛池模板: 贺兰县| 桐柏县| 阜阳市| 左贡县| 沙坪坝区| 于都县| 普陀区| 仙桃市| 灵川县| 手游| 庆阳市| 兴隆县| 平顶山市| 双峰县| 德阳市| 全南县| 刚察县| 东乡县| 花垣县| 曲靖市| 印江| 四会市| 太湖县| 芒康县| 西青区| 峨山| 公安县| 中阳县| 进贤县| 峨山| 上杭县| 全州县| 六安市| 鄂托克前旗| 金塔县| 舒城县| 新乐市| 茶陵县| 宁海县| 连山| 东山县|