SonarQube代码扫描与代码基线关联

简介: SonarQube代码扫描与代码基线关联

image.png

代码扫描

先安装好SonarQube服务器, 然后安装Sonar-scanner进行扫描。

sonar-scanner \
-Dsonar.projectKey=microservicecicd-demo-service \
-Dsonar.projectName=microservicecicd-demo-service \
-Dsonar.projectVersion=1.1.1 \
-Dsonar.ws.timeout=30 \
-Dsonar.projectDescription="xxxxxxx" \
-Dsonar.links.homepage=http://www.baidu.com \
-Dsonar.sources=src \
-Dsonar.sourceEncoding=UTF-8 \
-Dsonar.java.binaries=target/classes \
-Dsonar.java.test.binaries=target/test-classes \
-Dsonar.java.surefire.report=target/surefire-reports \
-Dsonar.host.url="http://sonar.idevops.site" \
-Dsonar.login=7c7b5f890dcb3c0ddf6d187fe47a8482f3430c74 \

效果

image.png


扫描结果关联Git Commit

提前装好插件


然后将下载后的jar包放到SonarQube插件目录中, 赋予可执行权限。然后重启SonarQube。

插件的说明文档查看该插件的Readme文档。-Dsonar.gitlab.failure_notification_mode值为commit-status表示更改提交状态, 值为nothing不做任何动作。

在上面扫描参数的基础上添加以下参数:

-Dsonar.gitlab.commit_sha=d0f7c74a058df8e935f1e247a68ac23d7d864295 \
-Dsonar.gitlab.ref_name=master \
-Dsonar.gitlab.project_id=39 \
-Dsonar.dynamicAnalysis=reuseReports \
-Dsonar.gitlab.failure_notification_mode=commit-status \
-Dsonar.gitlab.url=http://gitlab.idevops.site \
-Dsonar.gitlab.user_token=ABtkz-f_zkyRXAMeBZSc \
-Dsonar.gitlab.api_version=v4
  • commit_sha : gitlab项目提交ID
  • ref_name:gitlab项目分支
  • project_id:gitlab项目的ID
  • dynamicAnalysis:固定值reuseReports

效果

image.png




修改gitcommit的状态有什么作用?其实这个插件是直接修改COMMITID对应的pipeline状态。更新为失败或者成功。这样就可以基于流水线的状态来控制MR请求的合并操作。gitlab MR具有一个选项控制,即当流水线成功后才可以合并代码。此就是更改提交ID状态的最大作用。


image.png


目录
相关文章
|
Java
sonar入门:使用sonar-scanner检测代码
sonar入门:使用sonar-scanner检测代码
1901 0
sonar入门:使用sonar-scanner检测代码
|
Linux
yum镜像源汇总
yum镜像源汇总
5080 0
|
监控 关系型数据库 MySQL
MHA搭建教程
MHA搭建教程
233 0
|
移动开发 Java Windows
Java 匹配\r 和 \n 的正则表达式如何编写
【10月更文挑战第19天】Java 匹配\r 和 \n 的正则表达式如何编写
778 3
|
机器学习/深度学习 自然语言处理 大数据
社交媒体的情感分析大数据模型
构建基于大数据的情感分析模型,利用Python和机器学习处理社交媒体数据。情感分析识别文本情感倾向,助力市场洞察和舆情监控。技术栈包括Python、NLP库(nltk, spaCy, TextBlob, VADER)、Scikit-learn、TensorFlow/PyTorch及大数据工具。数据收集(如Twitter API)、预处理(去除噪声、分词)、特征提取(TF-IDF、词嵌入)、模型训练(逻辑回归、BERT)是关键步骤。模型能捕捉文本情感,支持决策,随着技术进步,应用前景广阔。
1776 10
|
移动开发 网络协议 前端开发
每日一博 - Server-Sent Events推送技术
每日一博 - Server-Sent Events推送技术
550 0
|
机器学习/深度学习 自动驾驶 算法
ONNX 在自动驾驶汽车中的应用案例
【8月更文第27天】随着自动驾驶技术的快速发展,高效的模型部署和跨平台的支持变得尤为重要。Open Neural Network Exchange (ONNX) 作为一种开放的模型格式,可以促进不同深度学习框架之间的模型转换,同时支持多种硬件平台上的高效执行。本文将探讨 ONNX 在自动驾驶系统中的应用,特别是如何在感知、决策和控制等核心环节中发挥作用。
683 3
|
人工智能 弹性计算 自然语言处理
AI奇思妙想之旅 —— 操作系统智能助手OS Copilot
AI奇思妙想之旅 —— 操作系统智能助手OS Copilot
469 1
|
安全 关系型数据库 Linux
centos7_安装mysql8(局域网访问navicat连接)
centos7_安装mysql8(局域网访问navicat连接)
379 1
|
机器学习/深度学习 算法
学习笔记: 机器学习经典算法-决策边界(decision boundary)
机器学习经典算法-个人笔记和学习心得分享
1554 0
学习笔记: 机器学习经典算法-决策边界(decision boundary)