成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

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

開發(fā) 架構(gòu)
SonarQube可以集成到許多流行的編程語(yǔ)言和集成開發(fā)環(huán)境中,幫助開發(fā)人員創(chuàng)建高質(zhì)量的軟件項(xiàng)目。SonarQube以及依賴環(huán)境軟件的安裝已經(jīng)在此系列文章的第一篇寫過(guò),這里只介紹如何配置和使用Jenkins+SonarQube進(jìn)行代碼質(zhì)量檢查。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

流水線腳本如下:

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)建

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

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

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

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

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2023-09-08 08:14:14

2021-01-05 07:49:15

工具JavaQodana

2023-06-28 15:56:10

微服務(wù)容器無(wú)服務(wù)器計(jì)算

2023-09-12 07:06:04

2023-09-14 20:55:52

NodeJSDocker

2023-10-13 18:57:22

2022-02-17 09:41:04

bitnamidockersonarqube

2023-07-06 08:22:49

SonarQubeToken

2019-10-21 11:00:29

微服務(wù)架構(gòu)部署策略

2023-10-12 21:15:08

微服務(wù)Docker

2023-04-20 08:01:13

2019-12-20 10:28:54

工具代碼開發(fā)

2022-07-21 10:02:47

SonarQube代碼Java

2010-12-15 16:17:59

服務(wù)部署

2023-10-17 14:29:35

2023-03-24 16:18:08

微服務(wù)架構(gòu)

2019-02-21 15:42:22

ZStack裸金屬部署

2021-05-07 08:03:15

微服務(wù)JenkinsGitHub項(xiàng)目

2023-03-02 00:04:59

機(jī)器學(xué)習(xí)系統(tǒng)架構(gòu)

2021-02-25 07:10:57

SonarQube代碼掃描代碼基線
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91精品国产92 | 亚洲女人天堂网 | 国产精品视频在线播放 | 亚洲视频免费在线播放 | 日韩中文字幕 | 欧美日韩久久精品 | 久久av网站 | 日韩在线免费观看视频 | 麻豆av在线免费观看 | 婷婷色成人| 中文字幕国产第一页 | 国产欧美精品在线观看 | 毛片黄片免费看 | 国产美女一区二区 | 国产精品视频在线观看 | 中文字幕日韩欧美一区二区三区 | 成人午夜激情 | 日韩成人精品在线 | 成人av一区二区三区 | 一区二区三区四区国产 | 男插女下体视频 | 精品婷婷| 午夜影视 | 男人天堂99| 亚洲精品视频在线 | av综合站| 亚洲伊人久久综合 | 欧美精品一区二区在线观看 | 性网址| 欧美精品在线免费观看 | 日本精品视频一区二区三区四区 | 99re在线视频观看 | 男女视频在线观看网站 | 欧美日韩在线免费 | 国产在线精品一区二区三区 | 成人av一区二区亚洲精 | 91精品国产乱码久久蜜臀 | 天天操天天射综合 | 国产精品日韩在线观看一区二区 | 亚洲中午字幕 | 亚洲第一在线视频 |