首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未授权在Travis上构建从装配式回购中提取请求时执行任何SonarQube分析。

问未授权在Travis上构建从装配式回购中提取请求时执行任何SonarQube分析。
EN

Stack Overflow用户
提问于 2016-09-26 21:15:39
回答 1查看 2.2K关注 0票数 1

我正在用Travis和SonarQube.com建立一个项目,当从存储库的分支发出拉请求时,一切都进行得很顺利,但是当Travis从分叉的存储库运行一个拉请求时,它就失败了。

从存储库中提取PR的构建:https://travis-ci.org/PistachoSoft/dummy-calculator/builds/162905730

从分叉存储库中提取PR的构建:https://travis-ci.org/PistachoSoft/dummy-calculator/builds/162892678

存储库:https://github.com/PistachoSoft/dummy-calculator

正如在构建日志中所看到的,这是一个错误:

代码语言:javascript
复制
You're not authorized to execute any SonarQube analysis. Please contact your SonarQube administrator.

我试过但没有成功的事情:

  • 更新声纳标记。
  • 使用组织中的另一个人授予的加密令牌。
  • 授予“声纳用户”和“任何人”对SonarQube项目的“执行分析”权限。

我能做些什么来解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-27 08:57:29

首先,我提请您注意一个重要的问题:您不应该在PR上运行“标准”SonarQube分析--否则您在SonarQube.com上的项目将被与彼此无关的中间分析“污染”。标准分析只能在主要的开发分支(通常是“主”分支)上执行。请阅读我们的示例项目的runSonarQubeAnalysis.sh文件以了解如何实现该目标。

现在,为什么你的尝试不起作用?仅仅因为SONAR_TOKEN环境变量(在您的YML文件中设置为“安全”)在PR“来自外部世界”(即当它不是您自己的PR时)不会被Travis解码。这是一个安全约束,以防止任何人分叉您的回购,用echo $SONAR_TOKEN更新YML文件,提交PR和genlty等待Travis执行它来发布安全环境变量。

分析“外部”PR是我们不久将致力于的事情,这样就可以简单、直观地实现这一点,并且保证开放源码软件项目能够从这一特性中获益。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39712531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档