Sonar GitLab-Plugin插件以及配置
下载安装插件
admin登录SonarQube,点击 配置 —> 系统 —> 更新中心 —> Available —> Search,输入 GitLab,在列表中点击 install 安装,安装完毕后重启 SonarQube 即可
在GitLab上注册一个Sonarqube账号,获取Private Token
- 回到SonarQube 配置插件
Sonar Scanner 相关配置
依然采用docker方式
拉取镜像
docker pull ciricihq/gitlab-sonar-scanner
在sonarqube上新建要测试的项目
按照向导创建完项目之后记住所设置的key
回到GitLab,在需要进行质量检测的项目中加入
.gitlab-ci.yml
,在末尾添加如下代码:stages: - analysis
sonarqube:
stage: analysis
image: ciricihq/gitlab-sonar-scanner
variables:
SONAR_URL: http://sonarqube.domain.lan #你的sonarqube地址
SONAR_ANALYSIS_MODE: issues
script:
- gitlab-sonar-scanner
sonarqube-reports:
stage: analysis
image: ciricihq/gitlab-sonar-scanner
variables:
SONAR_URL: http://sonarqube.domain.lan #你的sonarqube地址
SONAR_ANALYSIS_MODE: publish
script:
- gitlab-sonar-scanner在项目根目录添加sonar scanner 配置文件
sonar-project.properties
sonar.projectKey=<sonarqube上创建项目时填写的key> sonar.sources=.
sonar.gitlab.project_id=git@gitlab.domain.lan/awesome/xxx.git ##你的git仓库地址
GitLab Runner注册
拉取镜像
docker pull gitlab/gitlab-runner
利用docker注册镜像
docker run --rm -t -i -v /path/to/config:/etc/gitlab-runner --name gitlab-runner gitlab/gitlab-runner register \ --non-interactive \
--executor "docker" \
--docker-image alpine:3 \
--url "https://gitlab.com/" \
--registration-token "PROJECT_REGISTRATION_TOKEN" \
--description "docker-runner" \
--tag-list "docker,aws" \
--run-untagged \
--locked="false"启动GitLab Runner
docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner
测试验证
修改代码提交到gitlab,观察gitlab的pipeline的状态,以及sonarqube上新建项目的状态。
问题
观察redmine的日志,如果出现权限问题,请注意仓库的用户组需要为redmine:redmine