06 Jenkins+SonarQube 构建项目

Jenkins中配置SonarQube相关参数

系统管理-系统设置

  • SonarQube servers
  • QualityGates-Sonarqube
  • Quality Gates

 

全局工具配置

  • SonarQubeScanner

Jenkins构建流程

  1. SVN拉取代码
  2. sonarScanner代码质量检测(包含单元测试覆盖率)
  3. maven编译打包
  4. 获取sonarScanner扫描结果
  5. 确认是否远程发布

前提

  1. sonarQube安装完成
  2. sonarScanner安装完成
  3. Jenkins安装完成(相关插件都安装并配置好了,详细可见Jenkins安装
  4. SVN安装完成(地址:https://www.cnblogs.com/-mrl/p/8980244.html

 

JenKins 创建一个Maven任务

  1. configuration配置
  2. gerneral基础配置可不做修改
  3. SVN代码仓
  4. 构建触发器,可根据需求选择定时构建等参数
  5. 构建环境,因为使用SonarQube Scanner进行代码检测的,所有选择这个
  6. Maven 打包
  7. Post Steps 配置sonar分析配置
  8. 根据项目Project Key 获取SonarQube分析结果,(SonarScanner是一个插件,用来扫描代码的,最终结果是提交到SonarQube服务器的数据库)
    配置Jenkins处理结果:当SonarQube分析结果为FAILED,则标记此次Jenkins Job失败,结束构建
  9. Post-Build Actoins发布容器
    发布到Tomcat容器

    ssh发布到服务制定目录 ,此处可能要下载over ssh插件
  10. 点击保存,点击立即构建

    问题

    1:job构建运行时提示:ERROR: Error during SonarQube Scanner execution

    java.lang.IllegalStateException: Error when executing blame for file src/scripts/accountMgr/authMgr/authMgr.js at org.sonar.plugins.scm.svn.SvnBlameCommand.blame(SvnBlameCommand.java:102) at org.sonar.plugins.scm.svn.SvnBlameCommand.blame(SvnBlameCommand.java:59)

    原因是没有配置sonar.scm.disabled,在项目配置文件sonar_project.properties中配置其值为true即可。如果此处不设置,SVN访问无权限;

    sonar.scm.disabled=true

    2:sonar-scanner扫描代码出错 SonarQube svn: E170001

     

    问题原因:

           sonar-runner发现了.svn文件,于是启动了自己的SVN插件,去访问SVN,但是又没有对应SVN路径的授权所以就报错。

    问题解决:

    1.打开sonarqube的控制台,使用admin登录后 ,在配置->SCM->菜单中,将Disabled the SCM Sensor设置为true

    2.在svn页面,设置svn的用户名和密码。

     

     

 07 jenkins集成docker

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值