【问题标题】:How To Configure SonarQube GitHub Plugin With Jenkins如何使用 Jenkins 配置 SonarQube GitHub 插件
【发布时间】:2015-10-23 06:09:35
【问题描述】:

我们对在我的团队中利用 GitHub 集成非常感兴趣: http://docs.sonarqube.org/display/PLUG/GitHub+Plugin

我们使用 Jenkins 作为我们的 CI 服务器,并且已经有 GitHub Pull Request Builder 在那里工作。我们也一直在使用 SonarQube 进行分析,但在预览或增量模式以及 GitHub 集成方面运气不佳。当前版本是 SonarQube 5.1.1 和 GitHub 插件版本 1.0.1。

我们在 SonarQube 上安装了插件,并配置了我们的 GitHub Enterprise API。我们已经尝试在 Jenkins 和 Maven 中使用 SonarQube Runner 来让它按照 travis.sh 脚本作为指导工作: https://github.com/SonarSource/sonarqube/blob/master/travis.sh

我们看到 Sonar 集成出现在 GitHub 上,但它总是成功的(我们正在使用大型的遗留代码库并希望看到大量输出)。

我们的 javascript 和 java 分析之间的一致之处在于,我们似乎没有对任何文件进行索引,并且使用 GitHub Plugin InputFile Cache 传感器而不是我们习惯于在完整过程中看到的 Javascript 或 Java 传感器分析。

00:01:57.532 13:12:31.109 INFO  - 0 files indexed 
00:01:57.533 13:12:31.110 INFO  - 25784 files ignored because of inclusion/exclusion patterns
00:01:57.535 13:12:31.112 INFO  - Quality profile for js: Sonar way
00:01:57.758 13:12:31.334 DEBUG - 'SCM Sensor' skipped in preview mode
00:01:57.758 13:12:31.335 DEBUG - 'CPD Sensor' skipped in preview mode
00:01:57.759 13:12:31.336 DEBUG - Sensors : Lines Sensor (wrapped) -> GitHub Plugin InputFile Cache
00:01:57.759 13:12:31.336 INFO  - Sensor Lines Sensor (wrapped)
00:01:57.759 13:12:31.336 INFO  - Sensor Lines Sensor (wrapped) (done) | time=0ms
00:01:57.759 13:12:31.336 INFO  - Sensor GitHub Plugin InputFile Cache
00:01:57.759 13:12:31.336 INFO  - Sensor GitHub Plugin InputFile Cache (done) | time=0ms
00:01:57.759 13:12:31.336 DEBUG - No previous analysis, skipping issue tracking
00:01:57.763 13:12:31.340 INFO  - 
00:01:57.763 
00:01:57.763 -------------  Issues Report  -------------
00:01:57.763 
00:01:57.763   No file analyzed
00:01:57.763 
00:01:57.763 -------------------------------------------
00:01:57.763 
00:01:57.763 
00:01:57.763 13:12:31.340 INFO  - Export issues to /data/jenkins/workspace/mygea-mygeaviation-pullrequests/.sonar/sonar-report.json
00:01:57.766 13:12:31.343 INFO  - ANALYSIS SUCCESSFUL
00:01:57.767 13:12:31.344 DEBUG - Post-jobs : GitHub Pull Request Issue Publisher
00:01:57.767 13:12:31.344 INFO  - Executing post-job class org.sonar.plugins.github.PullRequestIssuePostJob

我们是否遗漏了一些简单的东西?

分析属性如下:

sonar.projectKey=mygea-ux-pullrequests
sonar.projectName=mygea-ux-pullrequests
sonar.projectVersion=1.0.0
sonar.sourceEncoding=UTF-8
sonar.language=js
sonar.sources=./
sonar.verbose=true
sonar.exclusions=static/ge_ux/**/*, node_modules/**/*, custom-login/custom-login-cfm/iids/**/*, custom-login/custom-login-honda/iids/**/*, custom-login/custom-login-ge/iids/**/*, static/ge.com.2013/components/**/*, static/ge.com.2013/widgets/**/*.min.js, testFiles/**/*, coverage/**/*, gulpfile.js, test-tmp/**/*, extend.js, index.js, static/ge.com.2013/js/**/*.min.js
sonar.analysis.mode=preview
sonar.issuesReport.console.enable=true
sonar.forceUpdate=true
sonar.github.pullRequest=$ghprbPullId
sonar.github.repository=mygea/mygeaviation
sonar.github.login=*****
sonar.github.oauth=*****
sonar.github.endpoint=*****

对此的任何帮助将不胜感激!这是一个很棒的插件,我们认为它真的可以帮助我们控制技术债务。

乔什

【问题讨论】:

标签: github jenkins sonarqube


【解决方案1】:

这里的 Google Group 提供了这个问题的答案: https://groups.google.com/forum/#!topic/sonarqube/eoTmLMyDrtA

分析会根据拉取请求中的文件自动过滤。我们正在使用仅在 pom.xml 和自述文件中进行更改的拉取请求进行测试。引入功能更改后,GitHub 拉取请求视图上的所有内容都按预期亮起。

用户错误!按设计工作。

感谢 Julien 将我们推向正确的方向。

【讨论】:

    猜你喜欢
    • 2016-10-17
    • 1970-01-01
    • 2016-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多