如何将 SonarCloud 与 GitHub 和 Jenkins 集成

H. *_*res 5 github jenkins sonarcloud

我刚刚结束了我与 Jenkins 的 GitHub 集成,这样每次我将代码提交到我的 GitHub 存储库时,Jenkins 都会自动构建。现在我也在尝试集成 SonarCloud,但我还没有成功。我不想与本地 SonarQube 服务器集成,我真的需要 SonarCloud 让我的团队在每次 Jenkins 构建时检查它。

我不确定是否应该在本地分析项目来实现这一点,或者我是否可以分析我的 Jenkins 服务器或 GitHub 存储库并获得我想要的结果,因为我找不到任何文档。

任何人都可以指出我正确的方向吗?

谢谢!

dan*_*1st 4

Sonarcloud 只是一个声纳库服务器。

只需使用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 variablesBuild Environment在您的工作中启用Prepare SonarScanner environment

完成此操作后,您可以使用$SONAR_MAVEN_GOAL(如果您使用的是 maven)、./gradlew sonarqube(如果您使用的是 gradle)或sonar-scanner(如果您没有使用其中任何一个)来运行 sonar-scanner。