首页
学习
活动
专区
圈层
工具
发布

集成:持续集成 &代码质量平台(一)

引导 您好,本章主要我们主要学习与质量管理平台Sonarqube集成。主要包含以下内容:1. 认识sonarqube 2. sonarqube配置管理 适合人群: 所有对DevOps感兴趣的同学。

1. 认识SonarQube

架构

  • 一台SonarQube Server启动3个主要过程:
    • Web服务器,供开发人员,管理人员浏览高质量的快照并配置SonarQube实例
    • 基于Elasticsearch的Search Server从UI进行后退搜索
    • Compute Engine服务器,负责处理代码分析报告并将其保存在SonarQube数据库中
  • 一个SonarQube数据库要存储:
    • SonarQube实例的配置(安全性,插件设置等)
    • 项目,视图等的质量快照。
  • 服务器上安装了多个SonarQube插件,可能包括语言,SCM,集成,身份验证和管理插件
  • 在构建/持续集成服务器上运行一个或多个SonarScanner,以分析项目

工作原理

开发人员在IDE开发代码,可以安装SonarLint插件进行提交前代码扫描 当开发人员提交代码到版本控制系统中,自动触发jenkins进行代码扫描。

版本

开源社区版、开发版、企业版、数据中心版

安装

我们这里使用Docker运行一个测试的环境,可以参考博客安装 博文地址: https://www.cnblogs.com/mascot1/p/11179767.html

代码语言:javascript
复制
docker run --rm -d --name sonarqube \
-p 9000:9000 \
-v ${LOCALDIR}/sonar/sonarqube_conf:/opt/sonarqube/conf \
-v ${LOCALDIR}/sonar/sonarqube_extensions:/opt/sonarqube/extensions \
-v ${LOCALDIR}/sonar/sonarqube_logs:/opt/sonarqube/logs \
-v ${LOCALDIR}/sonar/sonarqube_data:/opt/sonarqube/data \
sonarqube:7.9.2-community

WEB 页面 http://127.0.0.1:9000

2. SonarQube配置管理

强制登录

默认所有项目都可以公开的查看,在企业内肯定要配置成私有的。只有登录后才能查看。

LDAP集成

安装LDAP插件

不用找了哦,页面上没有LDAP配置。需要修改sonar配置文件,然后重启服务器。

代码语言:javascript
复制
#LDAP settings
#admin
sonar.security.realm=LDAP
ldap.url=ldap://192.168.1.200:389
ldap.bindDn=cn=admin,dc=devops,dc=com
ldap.bindPassword=ldap12344
#users
ldap.user.baseDn=ou=jenkins,dc=devops,dc=com
ldap.user.request=(&(objectClass=inetOrgPerson)(cn={login}))
ldap.user.realNameAttribute=cn
ldap.user.emailAttribute=mail

gitlab认证集成

安装GitlabAuth插件

在gitlab中创建一个应用 系统设置 应用管理,填写地址:

http://sonarserver:9000/oauth2/callback/gitlab

接下来在sonarqube中配置gitlab信息。这个真的有图形页面,可以直接配置。主要填写gitlab的信息。

登录时出现此选项表明成功了


举报
领券