【持续集成_03课_Jenkins生成Allure报告及Sonar静态扫描】

1、

一、构建之后的配置

1、安装allure插件

安装好之后,可以在这里搜到已经安装的

2、配置allure的allure-commandline

正常配置,是要么在工具里配置,要么在系统里配置

 allure-commandline是在工具里进行配置

两种方式进行配置

1)直接下载,比较慢

直接保存即可下载

2)通过本地的包配置

也就是到版本号这一级就可以了,不要到bin目录

3、项目构建之后的操作--生成报告

共2个步骤:

1.生成数据(告诉Jenkins你的数据在哪里)
2.通过数据生成报告(Jenkins会给你做)

 1)选择要配置的项目

2)点击配置

3) 选择构建后的操作

4) 选择步骤

5)选择构建后进行报告

 6)报告内容-配置

6.1)在工作空间查看main文件
 6.2)在main文件查看运行结果存放的文件夹的名称

6.3)在allure-report的配置里,这个路径,要配这这个文件夹的名称

7)配置完成后,这里显示allure-report

8)运行生产报告

生成对应的产生的报告

PS:Jenkins在哪里,服务器就在哪里,虚拟环境就在哪里。

9)报告信息通知项目相关人员 

9.1)方法一:企业微信-机器人

创建一个企业微信群,并且添加一个机器人,并且复制它的Webhook地址

9.1.1)在企业微信添加机器人

创建机器人,拿到机器人的webhook地址

9.1.2)下载对应程序的插件-Qy Wechat Notification

点击安装后,下载成功

9.1.3) 需要Jenkins能够访问这个地址:在system配置

9.1.4)进入项目,配置构建后的操作--企业微信通知

此时

 

9.2)方法二:邮件方式 (稍微复杂一点)

第一步:系统管理(ManageJenkins)一>系统配置(System)一>系统管理员邮件地址(发送者),设置邮箱配置

9.2.1)配置发送人邮箱--系统管理员邮箱

在system中配置 

 配置发送人--系统管理员邮箱(尽量不要使用QQ邮箱)

9.2.2)授权

授权--系统管理(ManageJenkins)一>系统配置(System)一>扩展电子邮件通知(ExtendedE-mailNotification)

 

在邮箱网页版的设置里面找到smpt的服务器地址

放到Jenkins里面,端口,默认是25

网页版邮箱这里必须是开启的

 填写授权码

获取新的授权码 

 这个授权码一般只会显示一次

 

复制后,填写

用户名是邮箱地址,密码是授权码,描述也用授权码即可

要选择添加后的授权和账号

9.2.3)项目的配置--构建后的操作

配置四项

 

第4项要打开高级设置

 找到tigger

删掉之前的

 添加always

 构建后,发送的邮件

打开报告的地址

二、使用Sonar进行静态扫描

1、什么是Sonar

 Sonar(SonarQube)是一个开源平台,用于管理源代码的质量

 2、Sonar Qube的安装

官网:Code Quality, Security & Static Analysis Tool with SonarQube | Sonar

官网下载的话,会让用jdk19的版本,这个版本太高了,安装比较麻烦,建议使用老师提供的安装包,不要自己在官网下载了。

1)直接安装老师的安装包

(建议用老师的sonar的版本,Sonar 9.7.0的版本,使用 JDK 11的版本)

2)启动

win:在当前目录打开cmd ,输入:StartSonar.bat  直接回车

启动之后,打开下面这个链接:(会有点慢),一直超时,因为比较耗资源

http://localhost:9000/

账号密码:admin admin

 打开

3)修改端口号(如果需要的话)

如果上面的9000端口被占用,那么需要修改端口,修改端口号的方法

打开上面这个文件,搜索9000

把9000修改为不一样的端口号,比如8801

4)汉化:(非必要)

汉化后

汉化:因为我们的版本是 9.7 , 但是目前是 10.X的版本,所以我们这个位置需要手动去进行下载对应的jar

包,并且放在:sonarqube-X.X/extensions/plugins目录下,然后重启Sonar Qube

 

 

需要下载 这个Jar包

Release sonar-l10n-zh-plugin-9.7 · xuhuisheng/sonar-l10n-zh · GitHub

5)官网下载

如果是官网下载的话,官网界面:

要选择免费的开源的

3、安装SonarScanner(本地/插件)

1)方法一: 通过本地的bat文件进行执行

地址:SonarScanner CLI

 拿到地址:

 

2)扫描器是以一个命令的方式进行执行。,要执行下面4个命令

2.1) 4个命令放的位置

在部署之前要扫描

 

组成应该是什么样子?

  1. SonarScanner 位置在哪里?

F:\ProjectHcEdu\cicdclass\day03\sonar-scanner\Windows\sonar-scanner-4.7.0.2747-windows\bin\sonar-scanner.bat

  1. 扫描之后项目的名字叫什么?

-D"sonar.projectKey=fuben"

  1. 扫描之后显示在什么位置 ? SonarQube地址

-D"sonar.host.url=http://127.0.0.1:9000"

  1. SonarQube地址对应的账号密码

-D"sonar.login=admin" -D"sonar.password=admin1"

方法二: 通过插件进行执行

第一步:Jenkins安装扫描器的插件:SonarQube Scanner,下载好了最好重启一下Jenkins

第二步:进行配置:tools

第三步:配置对应的信息

 3)构建结果

 

 测试就看看有没有什么影响,问题由开发来解决

 

 4、通过插件来执行

插件是不需要执行这3个命令的,

第一个位置是本地安装的位置,插件不需要。

3、4那2个命令是在tools配置的,不需要单独执行

只需要维护项目名字即可

第一步:Jenkins安装扫描器的插件:SonarQube Scanner,下载好了最好重启一下Jenkins

 

 下载完成

 第二步:进行配置:tools

 

第三步:配置对应的信息

 

 添加凭证的方式

上面这个凭证数据(srcret和描述)获取的方式,如下:

进入到Sonar Qube里面

选永不过期 

 然后回到Jenkins把刚才这个配上

第三步:配置项目

 

 

sonar.projectKey=SONAR-${JOB_NAME}-${BUILD_NUMBER}

通过变量方式获取运行项目的名字

 然后就可以去构建了。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 20:56:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 20:56:03       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 20:56:03       58 阅读
  4. Python语言-面向对象

    2024-07-11 20:56:03       69 阅读

热门阅读

  1. 解决vue3子组件onMounted中获取不到props的值

    2024-07-11 20:56:03       17 阅读
  2. 关系代数中的八种基本运算

    2024-07-11 20:56:03       22 阅读
  3. Oracle 确认被锁对象

    2024-07-11 20:56:03       19 阅读
  4. 【思考Spring Security框架的相关问题】

    2024-07-11 20:56:03       25 阅读
  5. 在SpringBoot使用AOP防止接口重复提交

    2024-07-11 20:56:03       22 阅读
  6. Spring AOP的几种实现方式

    2024-07-11 20:56:03       19 阅读
  7. pytorch 模型保存到本地之后,如何继续训练

    2024-07-11 20:56:03       23 阅读
  8. 【Spring】springSecurity使用

    2024-07-11 20:56:03       17 阅读
  9. 力扣682.棒球比赛

    2024-07-11 20:56:03       18 阅读
  10. STM32学习历程(day4)

    2024-07-11 20:56:03       21 阅读
  11. C# 装饰器模式(Decorator Pattern)

    2024-07-11 20:56:03       21 阅读
  12. 代码随想录-DAY⑦-字符串——leetcode 344 | 541 | 151

    2024-07-11 20:56:03       21 阅读
  13. FastAPI+SQLAlchemy数据库连接

    2024-07-11 20:56:03       19 阅读