Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

这篇具有很好参考价值的文章主要介绍了Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一,引言

  对于今天所分析的 SonarQube,首先我们得了解什么是 SonarQube ? SonarQube 又能帮我们做什么?我们是否在项目开发的过程中遇到人为 Review 代码审核规范?带着以上问题,开始今天的分析内容吧 !!!

1)什么是 SonarQube ?

SonarQube 是一种自动代码审查工具,用于检测代码中的错误、漏洞和代码问题。

2)SonarQube 能帮助我们做什么?

它可以与我们现有的工作流程集成,以实现跨项目分支和拉取请求的持续代码检查。

SonarQube 与 Azure DevOps 的集成允许我们在 Azure DevOps 存储库中维护代码质量和安全性。同时支持 Azure DevOps Server (本地)和 Azure DevOps Services (云端)。在 Azure Pipelines 作业中运行的 SonarQube 扩展可以自动检测正在构建的分支或拉取请求。

重点:SonarQube 也有版本的区分

  SonarQube Cloud:Saas 化的产品,托管在 AWS 上的,无需担心安装和维护

  SonarQube Server:SonarQube 服务和数据库都是需要我们安装到自己的服务器或者云端服务器,这就需要我们自行维护

两种产品基本上都涵盖了支持多种语言的代码分析,共享相同的底层静态分析引擎来捕获错误,漏洞等。那么让我们正式开始今天的内容

--------------------Azure DevOps 系列--------------------

1,Azure DevOps(一)基于 Net6.0 的 WPF 程序如何进行持续集成、持续编译

2,Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

3,Azure DevOps(三)Azure Pipeline 自动化将程序包上传到 Azure Blob Storage

二,正文

1,创建 SonarQube 项目

登录 sonarCoud.io 选择 Azure DevOps 登录

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

点击 “+” 选择 “Analyze new project” 创建新项目

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

选择本次实验的代码项目,点击 “Set Up“ 进行设置

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

2,配置与 Azure Pipeline 的集成

点击 ”With Azure DevOps Pipelines“ 开始配置

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

首先需要在 Visual Studio Marketplace 获取、安装 SonarCloud 扩展

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

选择 "Pipelines =》“”Service connection" ,点击 “New service connection” 添加新的服务连接

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

在我们的新的 SonarCloud service connection 输入以下参数,参数也来源于刚刚在 sonarcloud 上创建好的项目

点击 “Verify and save”

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

接下来就是 Pipeline 中添加 Sonar 的 Task了,打开已经编辑好的 Azure Pipeline 的 YAML 文件

1)搜索添加 “Prepare Analysis Configuration”

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

输入以下参数

SonarCloud Service Endpoint 选择:“SonarCloud”

Organization 选择:“SonarQube_Test”

Project Key:“AllenMaster_NetCore_WPF_Sample”

Project Name:"NetCore_WPF_Sample"

点击 ”Add“ 

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

Project Key 可以在 SonarCloud 的项目配置中可以找到

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

2)搜索添加 “Run Code Analysis” 并添加 Task

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

 3)搜索添加 “Publish Quality Gate Result” 并添加 Task

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

配置完成后,点击 ”Save“ 保存 YAML 文件,并将修改内容提交到 master 分支

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

最后,我们可以尝试运行 Pipeline,并在 SonarCloud 上查看代码分析报告

Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性

报告了主要有以下几个个指标

Bugs :代码中的重大 bug 错误,可能影响到项目的正常运行。

Code Smells:无关紧要的编码不规范问题,建议改正,点开详情可以看到规范的使用案例。

Vulnerabilities:项目中存在的漏洞,需要进行改正。

Coverage:项目的单元测试情况。

Duplications:项目中的重复代码块,建议重构。

三,结尾

  使用 sonarqube 分析项目代码代码的实验全部过程已经完成了。大家也多多操作练习,本文所分享的内容也存在着很多我自己的一些理解,有理解不到位的,还希望多多包涵,并且指出不足之处。

github:https://github.com/yunqian44/Standard.Tool.Platform

作者:Allen 

版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。文章来源地址https://www.toymoban.com/news/detail-426969.html

到了这里,关于Azure DevOps(二)Azure Pipeline 集成 SonarQube 维护代码质量和安全性的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 代码质量检测-SonarQube

    CI/CD流水线完善计划, 增加代码质量检查作业,在开发代码合入前提前发现不安全问题,因此引入代码质量检测-SonarQube服务。 Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量。通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成

    2024年01月24日
    浏览(31)
  • (十四)devops持续集成开发——jenkins流水线使用pipeline方式发布项目

    本节内容我们使用另外一种方式pipeline实现项目的流水线部署发布,Jenkins Pipeline是一种允许以代码方式定义持续集成和持续交付流水线的工具。通过Jenkins Pipeline,可以将整个项目的构建、测试和部署过程以脚本的形式写入Jenkinsfile中,实现对整个流程的可视化管理和控制。在

    2024年02月21日
    浏览(53)
  • 代码质量管理 SonarQube-01-入门介绍

    Devops-01-devops 是什么? Devops-02-Jpom 简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件 代码质量管理 SonarQube-01-入门介绍 项目管理平台-01-jira 入门介绍 缺陷跟踪管理系统,为针对缺陷管理、任务追踪和项目管理的商业性应用软件 项目管理平台-01-Phabricator 入门介

    2024年03月22日
    浏览(36)
  • Azure DevOps(一)基于 Net6.0 的 WPF 程序如何进行持续集成、持续编译

    我们是否正在为如何快速的编译、部署客户端应用程序而烦恼?这也是博主最近遇到的问题。目前博主所在公司主要做项目级的定制化开发,多以 C/S 架构的 WPF 程序为主,每次到了协助开发团队给实施团队编译好的要测试程序包时,就会出现多人协助,编译、打包好的二进制

    2023年04月19日
    浏览(37)
  • 使用单元测试提高代码质量与可维护性

    目录 一、单元测试的必要性 二、流行的测试框架 三、测试框架的用法 四、学习编写单元测试的建议 总结 随着软件开发的快速发展,单元测试作为一种自动化测试的方式,越来越受到重视。它可以有效地帮助开发人员在开发过程中发现和修复代码中的错误,从而提高代码的

    2024年02月04日
    浏览(77)
  • SonarQube质量门禁实践

    静态测试和动态测试是软件测试中两种不同的方法。 静态测试是一种对软件文档、代码和其他相关材料进行测试的方法,而不是在程序运行时测试。静态测试的目的是发现潜在的问题、错误和缺陷,以便在程序运行之前修复它们。静态测试通常由开发团队的成员完成,例如代

    2024年02月07日
    浏览(26)
  • Azure Pipeline入门

            最近工作上需要打架一个Azure pipeline,借此机会把Azure pipeline学习了一下。主要参考的资料是微软官方文档。感觉学习的过程还是有些痛苦的,主要原因是之前对pipeLine没有太多概念。只是知道它可以自动对程序进行编译。官方文档知识点比较多,内容写的很详细。我

    2024年02月04日
    浏览(29)
  • 前端面试:【代码质量与工程实践】单元测试、集成测试和持续集成

    在现代软件开发中,确保代码质量是至关重要的。单元测试、集成测试和持续集成是关键的工程实践,用于提高代码的可靠性和可维护性。本文将深入探讨这些概念,以及它们如何在软件开发中发挥作用。 1. 单元测试(Unit Testing): 单元测试是一种测试方法,用于验证代码

    2024年02月11日
    浏览(36)
  • DevOps概念及搭建全过程(Jenkins、Harbor、SonarQube、K8s)

    在如今互联网的格局下,抢占市场变得尤为重要,因此敏捷开发越来越被大家所推崇。于是,慢慢的有了DevOps这个概念,大致意思是开发-运维一体化。 1.1 基本概念 可以看到上图是一个无穷大的一个符号,Dev对应开发,Ops对应运维。 DevOps的方式可以让公司能够更快地应对更

    2023年04月17日
    浏览(37)
  • 【项目实战】自定义设置Sonar的规则,要求DevOps工具链SonarQube只扫描指定模块

    开发微服务项目,很多会基于网络上现成开源的微服务框架进行二开,公司有单元测试覆盖率的要求,往往会使用SonarQube 来实现扫描代码的单元测试覆盖率,但是因为网络上现成开源的微服务框架很大部分是已经现成的代码,因此补充单元测试工作会很痛苦,于是,可以自定

    2024年02月14日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包