java - Sonarqube 集成到 gitlab.com 上的私人仓库
问题描述
我想将 sonarqube 添加到 CI 中,以便我和我的团队可以查看我们的代码质量是否足够好。
我在 gitlab 注册表中设置了一个 Sonarqube 图像,并尝试将其集成到当前的构建脚本中。
build:
stage: build
script: gradle --build-cache assemble --debug
cache:
key: "$CI_COMMIT_REF_NAME"
policy: push
paths:
- build
- .gradle
dependencies: []
src_check:
services:
- registry.gitlab.com/zerra/zerra/sonarqube:latest
stage: src_check
script:
- echo scanning code quality...
- gradle sonarqube
SonarQube server [http://localhost:9000] can not be reached
尽管我希望将注册表添加到服务中会运行服务器,但我收到一个错误。
我该怎么做才能让它工作?(最好不必托管本地 gitlab 版本)
解决方案
我不熟悉您在那里提供的 GitLab CI 服务定义的语法/行为,但假设容器正常启动,我认为您必须在sonarqube:9000
而不是localhost:9000
.
SonarQube 容器链接到运行构建的容器,您可以通过与容器名称相同的主机名访问它。
至少这是我在这里解释手册的方式: https ://docs.gitlab.com/ee/ci/docker/using_docker_images.html#how-services-are-linked-to-the-job
推荐阅读
- react-native - 努力访问屏幕根标题中的根参数
- r - 对于 r 中数据帧中的所有位置,距离 lat long 的距离(以公里为单位)
- mongodb - 更新 MongoDb 中的脏记录
- scala - 模拟一个类方法抛出异常,这样我就可以在真实的方法调用中测试异常场景
- ms-access - 如何将行号添加到 Access Query 中的非唯一数据集中
- python - 在 requests.Session 和 Zeep 中添加纯文本证书
- python - fbprophet 未在 python 中安装(Windows)
- r - 如何将大型 JSONL 文件导入 R
- discord.js - 多个角色作为 discord.js v12 的 Rolecounter
- sql - 如何在关系 (SQL) 中选择最多 [number] 个项目?