当前位置: 首页 > news >正文

虚拟网站怎么做/搜索引擎优化的作用

虚拟网站怎么做,搜索引擎优化的作用,重庆建设工程质量监督检测中心,自己写wordpress主题【前言】本系列主要讲述sonarqube的安装部署以及如何集成jenkins自动化分析.netcore项目。目录如下:【实现功能】这篇文章将要介绍的主要内容如下:将上一篇文章中的sonarqube命令整合为shell脚本将 shell 脚本集成到jenkins中【整合sonarqube命令为shell…

【前言】

本系列主要讲述sonarqube的安装部署以及如何集成jenkins自动化分析.netcore项目。目录如下:

【实现功能】

这篇文章将要介绍的主要内容如下:

将上一篇文章中的sonarqube命令整合为shell脚本

将 shell 脚本集成到jenkins中

【整合sonarqube命令为shell脚本】

因为使用的是 linux 服务器,因此,我们将上一篇文章中关于 sonarqube 的相关命令整合到 shell 脚本中,以便方便地调用,并且很容易集成到CI/CD工具中。

shell 脚本另一个优势就是不需要在 jenkins 上安装过多的插件,而改用脚本调用,保持jenkins的单一整洁,在机器迁移的情况下会异常方便快捷。

1.整合 dotnet test 命令

首先将 dotnet test 命令整合成一个脚本,脚本如下:

#是否执行当前脚本

execute=$1#test项目全路径

testDir=$2

if [ ${execute} == false ];then

echo "7tiny: There is nothing to execute!"exit0

fi

echo "7tiny:begin test..."#使用这个方法需要在test项目里安装nuget包:dotnet add package coverlet.msbuild

dotnet test ${testDir}--logger:"trx;LogFileName=test.trx" /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:CoverletOutput='./TestResults/'

if [ $? != 0 ];thenexit1

fi

echo "7tiny:test finished!"exit0

参数:

execute:是否执行脚本(便于和jenkins的checkbox结合,如不需要传true即可)

testDir:test项目 xxxtexst.csproj 文件完整目录地址

2.整合 dotnet sonarscanner 命令

#是否执行当前脚本

execute=$1#要构建的解决方案名称

solutionName=$2#.sln文件全路径

solutionDir=$3

if [ ${execute} == false ];then

echo "7tiny: There is nothing to execute!"exit0

fi

echo "7tiny:begin scanner..."export PATH=${PATH}:${HOME}/.dotnet/tools

dotnet sonarscanner begin/k:${solutionName} /n:${solutionName} /v:${BUILD_NUMBER}if [ $? != 0 ];thenexit1

fidotnet build ${solutionDir}if [ $? != 0 ];thenexit1

fidotnet sonarscanner endif [ $? != 0 ];thenexit1

fi

echo "7tiny:scanner finished!"exit0

参数:

execute:是否执行脚本(便于和jenkins的checkbox结合,如不需要传true即可)

solutionName:要构建的解决方案名称

solutionDir:.sln文件全路径

脚本里面默认将解决方案的名称当作 sonarqube 中的项目名称;将 jenkins 编译的版本号当作 sonarqube 的活动编号;

3.将shell脚本到服务器 jenkins 可以访问的目录

我们将上述两个 shell 脚本存为 xxx.shell 并存放到服务器上,以便使用 jenkins 调用执行,比如我这里将两个文件存到了服务器某位置:

86439a38eba931cb9ed3d5821f621533.png

【将shell脚本整合到jenkins中】

有了shell 脚本,那么 jenkins 的整合便非常容易了,我们只需要在 jenkins 的 shell 命令框调用写好的 shell 脚本, 并将参数传递进去即可。

例如:

打开 jenkins 中的的某个项目的项目配置:

5045057be4f53c215d3e06ddd6d782f3.png

然后在最下面的 Build 区域 Execute Shell 框内填写相应的 shell 命令,当然是调用我们的 shell 脚本:

a2e5921da08a5ab53b4d996f6dce9940.png

依次调用了:

编译打包发布nuget

执行test

执行sonar canner

每个脚本的第一个参数都是是否执行,以便于我们配置 checkbox 决定是否执行某个脚本,其他参数按顺序传入即可。

checkbox 的配置方式:

我这里选择 boolean 参数的配置,然后我们在 build 的时候就可以自行决定是否选择。

bd6af180e2eba3f93b698d566f6c90fa.png

【Jenkins编译执行代码分析】

我们本次不进行nuget打包,只进行代码分析,因此选择代码分析的 checkbox :

01497c0c54a14bbf5e031a637ffece04.png

点击 Build 然后静候执行的结果,通过 jenkins 的日志,我们可以看出代码分析结果已经成功推送到了 sonarqube。

b2e9dad98d1b08a422a25f19f1243f71.png

我们可以打开 sonarqube 的对应项目进行查看:

52974900f66b6ee2cbc12dd1a3d89238.png

通过结果我们可以看出,本次构建相对于上次构建的结果,新加的代码的单元测试覆盖达到了百分百,且没有任何代码不规范和漏洞,但是历史的代码还有很多的漏洞需要填补。

【总结】

使用 sonarqube 分析dotnet core/C#代码的全部过程以及集成jenkins已经完成了,通过通用的脚本,我们可以方便地应用到多个项目中。

如有任何疑问,欢迎在评论区讨论~

http://www.lbrq.cn/news/758287.html

相关文章:

  • 四个商城建设/网站seo啥意思
  • PHP网站开发用什么电脑/成都比较靠谱的seo
  • 给律师做推广的网站靠谱么/百度云网盘资源搜索引擎入口
  • 重庆渝兴建设有限公司网站/广州网站推广
  • 建设通是什么网站/seo是什么职位缩写
  • 区块链系统app开发/百度推广seo是什么意思
  • 做网站靠什么盈利/引流推广犯法吗
  • 龙岩小程序设计/福清seo
  • 武汉做网站gaiqun/济南百度推广代理商
  • 网站搭建工具的种类/新网站快速收录
  • 成都网站建设培训班/发外链的网址
  • 票务网站模板/钦州seo
  • 地方网站如何做/公司网络推广方法
  • 网站广告连接如何做/软文营销成功案例
  • 登陆不了建设银行网站/大型营销型网站制作
  • 商城网站做推广方案/b2b自动发布信息软件
  • 设计手机网站公司/百度下载安装2019
  • 网站建设6135678/2024年的新闻
  • 深圳个性化网站建设公司电话/免费crm客户管理系统
  • 做蛋糕网站/seo搜索优化
  • 网站建设 英文版/跨境电商seo是什么意思
  • 深圳模具外贸网站建设/企业专业搜索引擎优化
  • 沧州网站制作公司/seo博客大全
  • 珠海市手机网站建设品牌/系统优化大师官方下载
  • 长沙景点排行榜/前端seo怎么优化
  • 杭州建设主管部门的网站/广州网站设计公司
  • 公司网站介绍范文/好搜网
  • 福鼎网站开发/网站建设报价
  • 做纯静态网站怎么样/立即优化在哪里
  • 济南好的seo/长沙建站优化
  • 浏览器面试题及详细答案 88道(45-55)
  • 【Spring Cloud 微服务】1.Hystrix断路器
  • Python爬取推特(X)的各种数据
  • 使用Docker容器化Python测试Pytest项目并配置GitHub Actions CI/CD流程
  • 前端性能优化工具Performance面板实战指南
  • Android RxJava变换操作符详解