偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

微服務部署—配置Jenkins+SonarQube進行代碼質量檢查

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

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

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

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

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

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

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

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

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

9、根據提示,查看在Jenkins中的配置步驟。
  • 點擊配置分析

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

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

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

10、切換到Jenkins配置界面,我們新建一個流水線任務。

11、SonarQube只提供了SonarQube檢查的流水線腳本,我們直接將下載GitLab代碼等都放到流水線任務中,這樣比較簡單。
  • 和之前的任務一樣,選擇“丟棄舊的構建”,設置保持構建的最大個數(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質量檢查'"
            }
        }
    }
    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、在任務左側點擊立即構建
  • 立即構建

  • 流水線任務可以在右側顯示階段視圖

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

13、構建成功后,下方會給出構建成功提示,此時SonarQube服務器就可以看到我們項目的檢查結果。

14、在SonarQube頁面查看代碼質量檢查結果

責任編輯:姜華 來源: 今日頭條
相關推薦

2023-09-08 08:14:14

2021-01-05 07:49:15

工具JavaQodana

2023-06-28 15:56:10

微服務容器無服務器計算

2023-09-12 07:06:04

2023-09-14 20:55:52

NodeJSDocker

2022-02-17 09:41:04

bitnamidockersonarqube

2023-10-13 18:57:22

2023-07-06 08:22:49

SonarQubeToken

2019-10-21 11:00:29

微服務架構部署策略

2023-10-12 21:15:08

微服務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

服務部署

2023-10-17 14:29:35

2023-03-24 16:18:08

微服務架構

2019-02-21 15:42:22

ZStack裸金屬部署

2021-05-07 08:03:15

微服務JenkinsGitHub項目

2023-03-02 00:04:59

機器學習系統(tǒng)架構

2018-11-14 10:20:15

SonarQube開源追蹤代碼
點贊
收藏

51CTO技術棧公眾號