SonarQube+Gitlab从零搭建自动化持续代码扫描质量平台

3、进入容器 dockerexec-it636347c22ded/bin/bash 4、初始化服务 gitlab-ctlreconfigure 注意:如果网站访问不了,可以重启gitlab服务 gitlab-ctrlrestart 5、访问gitlab网页 三、Sonarqube安装配置1、下载 注:版本:8.7.1 下载链接:https://www.sonarqube.org/downloads/(下载社区版就可以了)2、...
SonarQube+Gitlab从零搭建自动化持续代码扫描质量平台
一、前言我们都知道代码质量对于一个项目的重要性,如果开发人员迫于业务压力,一味追求项目开发进度,往往会容易形成大量的“烂代码”,那么测试人员势必会发现很多低级缺陷,甚至连冒烟测试都无法通过,这样势必会浪费很多时间,延误测试进度。假如我们在前期就借助一些代码扫描工具,然后针对这些扫描出的问题再进一步分析,这样轻易地可以发现一些真正代码问题;
其他的废话就不多说,今天我们就从gitlab服务器搭建、Sonarqube安装配置、gitlab与Sonarqube的整合集成三方面入手,从零搭建开始搭建一个自动化持续代码扫描质量平台
二、gitlab服务器搭建我们这里使用的是docker进行搭建,如果你还不知道怎么安装docker的可以问度娘或者参考:https://juejin.cn/post/6844903975947354125
1、安装镜像
dockerpullgitlab/gitlab-ce
2、启动容器
sudodockerrun-d\--hostnamexxxx.xxxx.xx\--namegitlab\--restartalways\--publish30001:22--publish30000:80--publish30002:443\--volume$HOME/gitlab/data:/var/opt/gitlab\--volume$HOME/gitlab/logs:/var/log/gitlab\--volume$HOME/gitlab/config:/etc/gitlab\gitlab/gitlab-ce
启动容器之后,我们执行dockerps(查看正在运行的容器列表)

发现我们的gitlab容器已启动,然后我们访问:http://localhost:30000/
发现仍然还是访问不了~~
那是因为gitlab还未启动,我们需要
3、进入容器
dockerexec-it636347c22ded/bin/bash
4、初始化服务
gitlab-ctlreconfigure
注意:如果网站访问不了,可以重启gitlab服务
gitlab-ctrlrestart
5、访问gitlab网页

三、Sonarqube安装配置1、下载
注:版本:8.7.1
下载链接:https://www.sonarqube.org/downloads/(下载社区版就可以了)

2、解压进入/bin,效果如下

3、启动
根据自己的操作系统,进入相应的目录,我这边选择的是macosx-universal-64,然后执行:./sonar.shconsole,效果如下:

可看到SonarQube已启动成功
4、访问SonarQube网址,http://localhost:9000/

四、gitlab与Sonarqube集成我前面花了挺大篇幅来介绍gitlab与SonarQube的安装搭建,为的就是替最后的集成做准备;当然这需要你对Gitlab-CI有一定的了解,如果你在这一块领域还是个小白,可以网上找相关资料熟悉,或者看我另一篇文章:react项目Jest+Enzyme单元测试集成至gitlab的后半部分;
废话不多说,我们现在就来介绍如何实现代码提交、合并前进行自动化代码扫描并实现PullRequest修饰,具体效果如图:

如果代码扫描没通过,不仅无法进行合并并会通过微信/云之家进行消息通知!
一、安装SonarQube社区版分支插件sonarqube社区版不支持branch功能,每个project都只能展示一个分支。要支持多个分支共同展示功能需要安装sonarqube-community-branch-plugin插件,当然我选择这个插件还有另外一个重要原因,它可以支持pullRequest修饰的功能
插件版本:v1.7.0(根据不同SonarQube版本选择对应插件版本)

1、下载对应版本jar包

2、复制jar包到SonarQube下的extensions/plugins/和lib/common/目录下
3、重启SonarQube
4、用管理员账号登陆SonarQube配置,并配置ServerbaseURL

5、关于pullRequest修饰后面介绍
二、GitLab的配置1、重新注册一个用户名为SonarQube的用户
2、登陆超级管理员账号进行Approve,SonarQube账号生效

3、登陆SonarQube账号
4、创建GitLabOAuthapp(将GitLab用作OAuth提供程序的应用程序)

点击保存,会自动跳转到另一个页面,里面有ApplicationID和Secret信息,千万记得记得这个要保存起来,SonarQube那里会用到这两个信息;

5、生成personalaccesstoken(用于修饰合并请求,留评论的账号的AccessToken)

点击创建,之后token生成,记得把这个token记下,SonarQube里面gitlab的集成需要使用到

到这里,gitlab的配置算是over了~
三、SonarQube的配置

2024-09-04
mengvlog 阅读 9 次 更新于 2025-07-21 03:20:50 我来答关注问题0
檬味博客在线解答立即免费咨询

代码相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部