jenkins - 如何将 SonarCloud 与 GitHub 和 Jenkins 集成
问题描述
我刚刚完成了与 Jenkins 的 GitHub 集成,因此每次我将代码提交到我的 GitHub 存储库时,Jenkins 都会自动构建。现在我也在尝试集成 SonarCloud,但我没有成功。我不希望与本地 SonarQube 服务器集成,我真的需要 SonarCloud 让我的团队在每次构建 Jenkins 时检查它。
我不确定是否应该在本地分析项目以实现此目的,或者我是否可以分析我的 Jenkins 服务器或 GitHub 存储库并获得我想要的结果,因为我找不到任何文档。
谁能指出我正确的方向?
谢谢!
解决方案
Sonarcloud 只是一个 sonarqube 服务器。
只需使用sonar-scanner(可以在此处找到 jenkins 的文档)。
首先,您需要为 sonar-scanner 安装 jenkins 插件。
之后,您使用 . 打开声纳扫描仪的配置Manage Jenkins > Configure System
。
https://sonarcloud.io
在下面插入Server URL
和你的声纳令牌(sonarclound)Server authentication token
在 下Manage Jenkins > Configure System
,您应该检查Enable injection of SonarQube server configuration as build environment variables
并Build Environment
在您的工作中,您应该启用Prepare SonarScanner environment
。
完成后,您可以使用$SONAR_MAVEN_GOAL
(如果您使用 maven)、./gradlew sonarqube
(如果您使用 gradle)或sonar-scanner
(如果您不使用这些)运行 sonar-scanner。
推荐阅读
- python - 需要帮助解析一段 HTML
- javascript - JavaScript RegExp:匹配所有特定字符,忽略嵌套括号
- python - Python中RuntimeException和Exception的区别
- hyperledger - 没有来自任何同行的有效响应
- php - 权限被拒绝 Nginx Docker
- reactjs - 如何在渲染中显示此数组中的一项?
- amazon-web-services - 防止 AWS cloudformation 中的回滚
- javascript - 尽管在 vega-lite 教程中逐步执行,但遇到 TypeError
- .net - 如何在可以在项目中覆盖的库(NuGet 包)中进行默认设置?
- arrays - 修复致命错误:数组中的索引超出范围