Golang代码质量持续检测
使用Docker
、Jenkins
、SonarQube
搭建代码质量持续检测环境。
安装
通过Docker
安装Jenkins
1 | docker run -d -p 10240:8080 -p 10241:50000 -v /var/jenkins_mount:/var/jenkins_home -v /etc/localtime:/etc/localtime --name myjenkins jenkins/jenkins |
安装插件:
- GitLab
- SonarQube Scanner
Docker 快速安装Jenkins完美教程 (亲测采坑后详细步骤)
在macOS和Linux上
通过Docker
安装Gitlab
1 | docker run -d \ |
GitLab Docker images
通过Docker
安装SonarQube
1 | docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true -p 9000:9000 sonarqube:latest |
Try out SonarQube
安装一些插件:
- Chinese Pack
设置
Jenkins
上配置GtiLab
Jenkins
上配置SonarQube
修改通知,可选邮件通知,以及发送邮件时机。
配置任务
创建自定义任务,配置时由于golang需要使用gopath,选择自定义工作空间。填写git源码地址,配置gitlab用户名密码。
选择触发器,可设置为推送代码时,合并代码时
增加构建步骤,这里可选一些golang
的静态代码检查,例如golint
1 | golangci-lint run ./... |
增加SonarQube
1 | sonar.projectKey=com.company.projectkey1 |
Introduction
在Jenkins中安装golang环境及工具
- 进入Jenkins容器中,安装golang以及一些工具,
vgo
、gometalinter
等
GitLab
系统配置
代码线配置集成触发器
测试
拉取代码,修改代码,推送代码进行测试。
- 是否会自动构建和执行静态检测
- 是否会发送邮件或者配置的其他结果通知
推荐阅读
sonarqube-for-golang