【问题标题】:How to configure SonarQube, Sonar Runner, GitLab and Jenkins to obtain Continuous Integration如何配置 SonarQube、Sonar Runner、GitLab 和 Jenkins 以获得持续集成
【发布时间】:2016-01-16 20:39:59
【问题描述】:

我已经在本地机器上安装了 SonarQube、Sonar Runner 和 Jenkins 最新版本(Ubuntu 14.04 LTS 桌面版)。

我想知道我们如何将这些与 git(GitHub 或 GitLab)集成。 当我们将代码推送到 git 时,我们希望预先对其进行分析,然后自动将其提交到 Git 中。

我该怎么办?

【问题讨论】:

标签: git sonarqube gitlab githooks sonar-runner


【解决方案1】:

你应该看看 sonar-gitlab-plugin 项目:https://gitlab.talanlabs.com/gabriel-allaigre/sonar-gitlab-plugin

编辑:至于之前回答中提到的 GitHub 插件,GitLab 插件会分析推送到 Git 仓库的新代码。因此,分析是在提交并将您的工作推送到存储库之后进行的。

【讨论】:

    【解决方案2】:

    您描述的功能不存在。

    真正存在的是使用SonarQube GitHub plugin 分析拉取请求的能力。即使在分析之后,您也可以接受或拒绝拉取请求;该插件仅在其上使用 cmets。

    【讨论】:

    【解决方案3】:

    首先,我会使用一些 Git 工作流在团队之间共享(Github、GitLab、GitFlow 等)。稍后我会保护 master 分支(如果您使用 GitFlow,也会进行开发),因此只有管理员可以修改主线流。最后,您可以在使用 webhook 完成合并请求之前集成 jenkins(或 Gitlab CI)、声纳和 nexus。有关如何将其与 GitLab 和 Jenkins 集成的更多信息,请参阅 GitLab plugin。 Sonar 可以很容易地与安装 Sonar 插件的 Jenkins 集成。

    【讨论】:

      猜你喜欢
      • 2015-09-16
      • 2019-03-14
      • 2019-10-31
      • 2019-11-28
      • 2017-07-22
      • 2015-11-18
      • 1970-01-01
      • 2015-08-11
      • 1970-01-01
      相关资源
      最近更新 更多