设为首页 收藏本站
查看: 1310|回复: 0

[经验分享] Sonar6.0应用之四:与Jenkins集成分析(Scanner+Maven)

[复制链接]

尚未签到

发表于 2018-9-4 08:50:26 | 显示全部楼层 |阅读模式
  一、安装并配置Jenkins。
  Jenkins 的前身是 Hudson 是一个可扩展的持续集成引擎。主要用于:

  •   持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。
  •   监控一些定时执行的任务。
  它有两种安装方法,一种是独立安装,另一种是做为一个Tomcat的一个war插件来运行(JDK环境是必不可少的),先下载Tomcat,解压tomcat到某个目录,如/usr/local,进入tomcat下的/bin目录,启动tomcat,将jenkins.war文件放入tomcat下的webapps目录下,启动jenkins时,会自动在webapps目录下建立jenkins目录,所以在地址栏上访问时需要在IP后面加Jenkins目录,例如:http://IP/jenkins:8080。
  使用命令行命令Scanner及Runner分析代码,需要人工下载源代码文件夹到分析命令所在服务器进行人工运行,持续性分析体验很差。使用Jenkins可以自动的下载源代码,并自动完成分析,还可以设置定时任务,实现全自动,是懒人必备利器啊!
  下例中,使用Git+Scanner及Git+Maven分别进行源代码自动分析。原理基本一样,首先要有一个代码库,如Bitbucket,然后在Jenkins中配置Git从代码库中自动下载最新的代码,最后调用Scanner或Maven把代码发送到SonarQube进行分析,SonarQube上显示本次项目的分析报告。
  1、在CentOS中独立安装Jenkins、Maven。
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo  #添加Jenkins的源  
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key      #安装Jenkins的Key
  
yum install jenkins                                            #安装Jenkins
  
ll /usr/lib/jenkins/            #安装成功后可以查看到Jenkins的war包,如果要升级jenkins,只需要下载这个war包替换下就行。
  
vim /etc/sysconfig/jenkins      #配置Jenkins,默认启动端口8080,如果不需要改,配置文件可以不动
  
systemctl start jenkins         #启动Jenkins服务
  
chkconfig jenkins on            #设置为开机自动启动
  
cat /var/lib/jenkins/secrets/initialAdminPassword               #显示Jenkins安装后的Admin的授权号码,复制出来在网页登陆时粘贴上,用于完成授权。
  2、在其它电脑上浏览器访问Jenkins,访问地址:http://服务器IP:8080,粘贴上复制好的授权号,授权成功后,设置管理员账号及密码,再安装默认组件,最后进入启动界面:
DSC0000.png

  在Jenkins中下载并安装sonarQube Plugin插件。
DSC0001.png

DSC0002.png

  安装完成后勾选下图,Jenkins自动重启。
DSC0003.png

  3、在Jenkins中配置Sonar及设置全局配置
  在Jenkins首页的系统管理》系统配置中找到Sonaqube的配置项
DSC0004.png

DSC0005.png

  设置全局工具配置
DSC0006.png

DSC0007.png

  4、新建一个自由项目,并配置Scanner时行配置
DSC0008.png

DSC0009.png

  在Bitbucket中找到要分析项目源码Git地址,复制下来
DSC00010.png

  在Git中配置源码获取地址,并增加在Bitbucket中最少具有读取权限的用户名及密码,实现从源码库下载源码的功能。
DSC00011.png

DSC00012.png

  构建Scanner来执行代码分析
DSC00013.png

  把Scanner的配置文件复制到Analysis properties中,项目名称、主键、版本号根据实际需要修改。
DSC00014.png

  立即构建首次代码分析
DSC00015.png

  查看执行过程
DSC00016.png

  出现错误,和SonarQubo中的Findbugs插件有冲突,需要在SonarQubo中删除这个插件,再执行分析就能成功
DSC00017.png

DSC00018.png

  分析成功
DSC00019.png

  SonarQube中查看分析结果
DSC00020.png

  5、安装Maven,并新建一个maven项目,进行配置
  在系统管理——》全局工具管理中安装Maven
DSC00021.png

DSC00022.png

  随便取个名字并保存
DSC00023.png

  现在还不会安装maven,只有在“立即构建”时才会执行安装maven的操作,接下来新建一个maven项目
DSC00024.png

  同样的配置Git
DSC00025.png

DSC00026.png

  源码目录下的“pom.xml”是Eclipse中的Maven生成的配置文件,需要在Eclipse中先进行配置,并且生成在根目录下。
DSC00027.png

  增加一个执行Shell
DSC00028.png

  写入如下命令
DSC00029.png

DSC00030.png

  第一次很慢,因为要先下载Maven安装后,再执行代码分析,以后就快多了,构建成功了在Console Output中有SUCCESS的提示
DSC00031.png

  在sonar中查看(这是已经配置好的仪表盘)
DSC00032.png




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-562246-1-1.html 上篇帖子: jenkins自动部署 下篇帖子: ubuntu安装jenkins上遇到的坑
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表