代码扫描搭建Sonar+docker+jenkins

1、环境准备

        centos 7 +JDK11

        Docker version 20.10.13, build a224086

        jenkins:https://mirrors.jenkins.io/war-stable/2.319.1/

2、启动jekins

nohup java -jar jenkins.war --httpPort=80 >>log 2>&1 &

3、部署sonar:官网直接运行一个部署:https://docs.sonarqube.org/latest/setup/get-started-2-minutes/

docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:latest

 登陆平台,创建一个项目拿到key:

 4.jenkins配置:

  •   安装插件:

Git Parameter Plug-In

GitHub Branch Source Plugin

NodeJS Plugin

SonarQube Scanner for Jenkins

  • 全局配置:JDK,git,SonarScanner for MSBuild、SonarQube Scanner、maven、nodeJs

NodeJS在检查GO、TypeScript语言时需要用到。【注意NodeJS版本是否与系统兼容,具体的测试方法可以在jenkins创建一个项目,配置nodeJS 命令如 NodeJS -v 看日志提示是否缺少动态库等。】

 

  • 项目配置

 

sonar.projectKey=javaProject
sonar.projectName=javaProject
sonar.projectVersion=1.0-SNAPSHOT
sonar.sourceEncoding=UTF-8
sonar.login=sqp_89465ca5ce613f08dd167b135a97r2312
sonar.modules=java-module

# Java module
java-module.sonar.projectName=Java Module
java-module.sonar.language=java
java-module.sonar.sources=src
java-module.sonar.projectBaseDir=.
sonar.java.binaries=.

 如果是Go、TypeScript语言项目需要配置NodeJS

 

sonar.projectKey=goProject
sonar.projectName=goProject
sonar.projectVersion=1.0-SNAPSHOT
sonar.sourceEncoding=UTF-8
sonar.login=sqp_6f5021a0cdf0f194a5764afc9f49a3cbfc169c11
sonar.sources=.
sonar.exclusions=**/*_test.go,**/vendor/**
sonar.tests=
sonar.test.inclusions=**/**_test.go
sonar.test.exclusions=**/vendor/**
sonar.go.coverage.reportPaths=report/coverage.out
sonar.go.tests.reportPaths=report/test.json
sonar.go.govet.reportPaths=report/govet-report.out
sonar.go.gometalinter.reportPaths=report/gometalinter-report.out
sonar.go.golint.reportPaths=report/golint-report.out

5.在jekins build项目,在soanr平台就可以看到结果了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值