7.云原生之jenkins集成SonarQube

1. 私有云实战之基础环境搭建
2. 云原生实战之kubesphere搭建
3.云原生之kubesphere运维
4. 云原生之kubesphere基础服务搭建
5.云原生安全之kubesphere应用网关配置域名TLS证书
6.云原生之DevOps和CICD
7.云原生之jenkins集成SonarQube
8.云原生存储之Ceph集群

文章目录

    • 搭建 SonarQube
    • 配置SonarQube
      • 创建sonar-token生成令牌
      • 查看jenkins暴露的NodePort端口
      • 创建Webhook 服务器
      • 将 SonarQube 配置添加到 ks-installer
    • Jenkins集成SonarQube
      • 将 SonarQube 服务器添加至 Jenkins
      • jenkins配置SonarQube
      • jenkins中配置SonarQube
      • 创建Jenkins凭证
      • 将 sonarqubeURL 添加到 KubeSphere 控制台
      • 重启服务
      • 为新项目创建 SonarQube Token

搭建 SonarQube

添加应用仓库https://charts.kubesphere.io/main,在仓库中安装SonarQube
搭建 SonarQube 并配置到 KubeSphere 将 SonarQube 集成到流水线 【应用仓库安装】
image.png
sonarqube地址:

sonarqu-base-sonarqube.base.svc.cluster.local:9000
master_ip:32545

配置SonarQube

创建sonar-token生成令牌

image.png

240cb3903f4ee4aba15f531686dc6bc598c28cc3

查看jenkins暴露的NodePort端口

http://master节点ip:30180/sonarqube-webhook/
http://devops-jenkins.kubesphere-devops-system.svc.cluster.local
image.png

创建Webhook 服务器

点击下图create配置Jenkins Console URL
image.png
image.png

可使用内网域名:devops-jenkins.kubesphere-devops-system.svc.cluster.local
端口使用80
image.png

将 SonarQube 配置添加到 ks-installer

image.png
image.png
搜索devops修改配置保存

  devops:
    enabled: true
    jenkinsMemoryLim: 8Gi
    jenkinsMemoryReq: 2Gi
    jenkinsVolumeSize: 8Gi
    # 添加如下配置
    sonarqube: # Add this field manually.
      externalSonarUrl: http://sonarqu-base-sonarqube.base.svc.cluster.local:9000 # SonarQube的IP地址.
      externalSonarToken: 240cb3903f4ee4aba15f531686dc6bc598c28cc3

Jenkins集成SonarQube

将 SonarQube 服务器添加至 Jenkins

jenkins地址:

http://devops-jenkins.kubesphere-devops-system.svc.cluster.local:80
http://master_ip:30180

image.png

请使用地址 http://:30180 访问 Jenkins。安装 KubeSphere 时,默认情况下也会安装 Jenkins 仪表板。此外,Jenkins 还配置有 KubeSphere LDAP,这意味着您可以直接使用 KubeSphere 帐户(例如 admin/P@88w0rd)登录 Jenkins。有关配置 Jenkins 的更多信息,请参见 Jenkins 系统设置。

jenkins配置SonarQube

点击左侧导航栏中的系统管理->向下翻页找到并点击系统配置->搜寻到 SonarQube servers,然后点击 Add SonarQube
image.png

jenkins中配置SonarQube

输入 NameServer URL (http://:)
image.png

http://sonarqu-base-sonarqube.base.svc.cluster.local:9000
http://192.168.31.21:32545

创建Jenkins凭证

点击添加,选择 Jenkins,然后在弹出的对话框中用 SonarQube 管理员令牌创建凭证。创建凭证后,从 Server authentication token 旁边的下拉列表中选择该凭证。点击应用完成操作。
image.png
image.png
填写SonarQube生成的凭证240cb3903f4ee4aba15f531686dc6bc598c28cc3

将 sonarqubeURL 添加到 KubeSphere 控制台

image.png
搜寻到 data.client.enableKubeConfig,在下方添加 devops 字段并指定 sonarqubeURL。

client:
  enableKubeConfig: true
  devops: # 手动添加该字段。
    sonarqubeURL: http://sonarqu-base-sonarqube.base.svc.cluster.local:9000 # SonarQube IP 地址。

重启服务

kubectl -n kubesphere-devops-system rollout restart deploy devops-apiserver
kubectl -n kubesphere-system rollout restart deploy ks-console

为新项目创建 SonarQube Token

您需要一个 SonarQube 令牌,以便您的流水线可以在运行时与 SonarQube 通信。

  1. 在 SonarQube 控制台上,点击 Create new project

image.png
image.png

  1. 输入项目密钥,例如 java-demo,然后点击 Set Up

image.png

  1. 输入项目名称,例如 java-sample,然后点击 Generate

image.png

  1. 创建令牌后,点击 Continue

image.png

b0ce224cf5d9fcd36509c86c968faf195b82a0e5

  1. 分别选择 JavaMaven。复制下图所示绿色框中的序列号,如果要在流水线中使用,则需要在凭证中添加此序列号
    在这里插入图片描述
mvn sonar:sonar \
  -Dsonar.projectKey=java-demo \
  -Dsonar.host.url=http://192.168.31.21:32545 \
  -Dsonar.login=b0ce224cf5d9fcd36509c86c968faf195b82a0e5

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/311195.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

美国证券交易委员会 X 账户被黑,引发比特币市场震荡

Bleeping Computer 网站消息,威胁攻击者成功“占领”了美国证券交易委员会的 X 账户,并发布一条关于批准比特币 ETF 在证券交易所上市的虚假公告。 帖子原文:今天,美国证券交易委员会批准比特币 ETF 在注册的国家证券交易所上市&a…

Blazor快速开发框架Known-V2.0.0

Known2.0 Known是基于Blazor的企业级快速开发框架,低代码,跨平台,开箱即用,一处代码,多处运行。 官网:http://known.pumantech.comGitee: https://gitee.com/known/KnownGithub:ht…

嵌入式培训机构四个月实训课程笔记(完整版)-Linux系统编程第十天-Linux下mplayer音乐播放器练习题(物联技术666)

更多配套资料CSDN地址:点赞+关注,功德无量。更多配套资料,欢迎私信。 物联技术666_嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记-CSDN博客物联技术666擅长嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记,等方面的知识,物联技术666关注机器学习,arm开发,物联网,嵌入式硬件,单片机…

实现接口自动化测试

最近接到一个接口自动化测试的case,并展开了一些调研工作,最后发现,使用pytest测试框架并以数据驱动的方式执行测试用例,可以很好的实现自动化测试。这种方式最大的优点在于后续进行用例维护的时候对已有的测试脚本影响很小。当然…

CAN201 计网概念收集

Lecture 1 the theoretical basis for networking Network edge and core 地理覆盖范围:广WAN,城MAN,局LAN,个PAN 交换方式,电路,报文,分组 电路交换vs报文vs分组 Network performance pr…

[AutoSar]基础部分 RTE 07 VFB虚拟功能总线

目录 关键词平台说明一、VFB1.1VFB是什么1.1VFB的好处1.2VFB的坏处 二、VFB在ECU内部的描述2.1Components2.2 Port-Interfaces2.3 Port2.4 Compositions 关键词 嵌入式、C语言、autosar、VFB 平台说明 项目ValueOSautosar OSautosar厂商vector芯片厂商TI编程语言C&#xff0…

浅析NVMe key per IO加密技术-3

三、Key per IO行业规范支持情况 Key Per I/O功能在行业规范中的支持情况: NVMe标准已经批准并采纳了NVMe TP4055提案,明确支持并定义了如何使用每个I/O操作独立的加密密钥技术。这意味着NVMe设备可以实现对每一个数据传输请求进行单独加密,…

降压恒压 耐压DC60V芯片,SL3037B替代HT7463A、兼容替代HT7463B

在当今的电子设备中,电源管理芯片扮演着至关重要的角色。它们负责为设备提供稳定的电压,确保设备的正常运行。然而,随着技术的不断发展,一些传统的电源管理芯片已经无法满足现代设备的需要。此时,寻找一种能够替代传统…

0111qt

实现闹钟,并播报懒虫...~ daytest.pro: QT core gui texttospeechgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11# The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (th…

nginx和CDN应用

一、代理的工作机制 1.代替客户机向网站请求数据,从而可以隐藏用户的真实IP地址。 2.将获得的网页数据(静态 Web 元素)保存到缓存中并发送给客户机,以便下次请求相同的数据时快速响应。 二、代理服务器的…

Windows7共享文档—开启方法及用户权限设置

使用计算机的朋友,在工作中经常需要在局域网中将文件共享给其他用户,这样其他人可以方便的通过局域网查看,甚至修改这些共享文件。当然,根据文件的重要程度,使用等级不同,不同的用户会赋予不同的权限&#…

进行商城的测试用例设计思路是什么?

进行商城的测试用例设计时,可以考虑以下思路: 1. 功能测试:测试商城的基本功能是否正常工作,包括用户注册、登录、浏览商品、搜索商品、添加商品到购物车、下单、支付等。 2. 数据验证测试:验证商城中的数据是否正确…

Linux 配置FTP服务器 + vsftpd服务安装配置 (Good篇)

CSDN 成就一亿技术人! VSFTPD 实现客户端和服务器之间传输文件 CSDN 成就一亿技术人! 目录 什么是VSFTPD? VSFTPD 的特点和功能 1. 设置和使用FTP服务器的步骤 1. 下载vsftpd包 2. 启动服务 开机自启 3. 关闭防火墙 4. 配置vsftpd服…

Base64编码:数据传输的安全使者

Base64编码是一种将二进制数据转换为可传输的文本表示形式的方法,它在全球范围内被广泛应用于网络通信、数据存储和传输等领域。本文将从多个方面介绍Base64编码的原理、应用及其在现实场景中的优势,帮助您深入了解这一重要的编码技术。 Base64编码解码…

MySql workBench客户端菜单汉化最新版

找到Mysql Workbench安装目录 如:D:\soft\MySQL\MySQL Workbench 8.0 CE\ 进入data目录:D:\soft\MySQL\MySQL Workbench 8.0 CE\data 里面有main_menu.xml文件,将汉化文件覆盖即可 main_menu.xml汉化内容 注意篇幅限制请移步下载完整版完…

Window平台安装MongoDB

在部署前需要在官网先确定系统对应的Mongo DB版本。 本机电脑为Window10,所以这里以MongoDB 6.0版本。 1 在官网下载安装包 2 安装MongoDB MongoDB Compass 是一个图形界面管理工具,如果勾选了安装会花费长一点时间,可以取消掉勾选&#xff…

C++ Primer 6.2参数传递 知识点+练习题

C Primer 6.2参数传递 知识点练习题 指针形参使用引用拷贝Const 形参实参尽量使用常量引用数组形参数组引用形参传递多维数组向main函数传参数含有可变形参的函数练习题待更新 指针形参 void reset(int *p) {*p0;//p指向的整型对象变为0p0;//只是对形参改变p,使其为…

NPN PNP SS8050 SS8550 S8050

SS8050的使用及引脚判断方法 今天讲的是NPN型三极管SS8050,主要分为以下几个方面: 一、前言 二、SS8050简介 三、NPN三极管与PNP三极管 四、三极管管脚识别方法 五、不拆卸三极管判断其好坏 六、S8050和SS8050的区别 七、三极管与MOS管的区别 八…

Modern C++ std::mutex底层原理

前言 我时常有这样的疑问: std::mutex怎么就能保证后面的语句100%安全哪?CPU reordering就不会把这些语句重排到mutex前面执行?而且各个CPU都是有L1、L2缓存的,如果mutex后面要访问的的变量在这些缓存中怎么办? 带着…

开启鸿蒙开发探索之旅ArkTS基本语法介绍(3)

上一章简单的介绍了鸿蒙HUAWEI DevEco Studio框架的搭建,这一章讲一下鸿蒙的主要开发一眼ArkTS的基本语法结构 1.ArkTS语法解释 ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展&…