jenkins集成sonarqube代码审核

简介:

目前在持续集成领域,除了后起之秀travis ci,在老牌工具中,最著名的还是非jenkins莫属。本篇文章简单的说一声jenkins与sonarqube的集成来实现代码的静态审核。

在这里不详细罗列jenkins的安装与初始化配置,假设你已经安装好了jenkins,并正常启动了。我们直接 开始安装sonarqube的插件,方法如下:

 

系统管理 --> 管理插件 --> 可选插件 --> Sonarqube Plugin

 

安装完成以后,在jenkins系统设置中配置sonarqube如下:

系统管理 --> 系统设置 --> SonarQube

配置如下:

 配置项说明如下:

Name:定义一个名称,可随意指定

Server URL:定义sonarqube的访问地址

SonarQube account login:填写登录sonar的用户名

SonarQube account password:填写登录sonar的密码

Database URL:sonar数据库的连接地址,示例:jdbc:mysql://10.5.10.107:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance

Database login:登录sonar数据库的用户名

Database password:登录sonar数据库的密码

Database driver:我看到有些版本中有该项,在我使用的版本里没有,如果有的话,可以设置为com.mysql.jdbc.Driver

 

需要说明的是,如果sonar的执行指令sonar-runer-2.4不在标准路径下,则需要指定路径,在有些jenkins版本,可以直接定义SONAR_RUNNER_HOME变量,我使用的版本里没有这项定义。可以通过如下方法定义:

系统管理 --> 系统设置 --> 全局属性 --> 勾选Environment variables,如下:

 

在项目构建中使用sonarqube

在“构建”中增加构建步骤,选择"Invoke Standalone SonarQube Analysis",如下:

 

在项目的代码仓库中添加sonar-project.properties文件,内容如下:

sonar.projectKey=projectname

sonar.projectName=projectname

sonar.projectVersion=1.0

sonar.sourceEncoding=UTF-8

sonar.sources=.

 

至此,配置完成。


本文转自 msj0905 51CTO博客,原文链接:http://blog.51cto.com/sky66/1934007


相关文章
|
10月前
|
人工智能 自然语言处理 安全
代码静态扫描工具集成与实践
代码静态扫描工具(Static Application Security Testing, SAST)是在不运行代码的情况下,通过分析源代码或二进制代码来发现潜在安全漏洞、代码缺陷和质量问题的工具
1152 4
|
10月前
|
机器学习/深度学习 编解码 计算机视觉
用于高效高光谱图像分类的多尺度上下文感知集成深度 KELM(Matlab代码实现)
用于高效高光谱图像分类的多尺度上下文感知集成深度 KELM(Matlab代码实现)
195 2
|
10月前
|
jenkins Shell 测试技术
|
10月前
|
编解码 算法 自动驾驶
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
693 125
|
11月前
|
机器学习/深度学习 算法 数据挖掘
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
297 0
|
12月前
|
安全 API 数据安全/隐私保护
低代码革命:API无代码集成如何让企业“3天上线一个生态”?
在数字化转型浪潮中,API成为释放数据价值、提升企业效率的核心。本文详解API架构设计、安全实践与跨平台集成,为CTO提供效率提升指南,涵盖微服务、安全认证、协议选择、低代码集成及未来趋势,助力企业构建敏捷、安全、高效的数字生态。
|
10月前
|
机器学习/深度学习 数据采集 传感器
基于多尺度集成极限学习机回归(Matlab代码实现)
基于多尺度集成极限学习机回归(Matlab代码实现)
210 1
|
10月前
|
安全 jenkins Java
Java、Python、C++支持jenkins和SonarQube(一)
Jenkins 是一个开源的 持续集成(CI)和持续交付(CD) 工具,用于自动化构建、测试和部署软件项目。它基于 Java 开发,支持跨平台运行,并拥有丰富的插件生态系统,可以灵活地扩展功能
547 5
|
10月前
|
jenkins Java Shell
Java、Python、C++支持jenkins和SonarQube(全集)
Jenkins 是一个开源的持续集成(CI)和持续交付(CD)工具,用于自动化构建、测试和部署软件项目。它基于 Java 开发,支持跨平台运行,并拥有丰富的插件生态系统,可以灵活地扩展功能
825 1
|
10月前
|
jenkins Java 持续交付
Java、Python、C++支持Jenkins和SonarQube(三)
Python与Jenkins和SonarQube
494 1

推荐镜像

更多