gpt4 book ai didi

github - 从Travis CI上的Forket存储库构建拉取请求时,无权执行任何SonarQube分析

转载 作者:行者123 更新时间:2023-12-03 03:49:50 24 4
gpt4 key购买 nike

我正在使用Travis CI和SonarQube.com建立一个项目,当从存储库的分支发出拉取请求时,一切都会顺利进行,但是当Travis从派生的存储库运行从拉取请求生成的构建时,它会失败。

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

从 fork 存储库构建PR:https://travis-ci.org/PistachoSoft/dummy-calculator/builds/162892678

仓库:https://github.com/PistachoSoft/dummy-calculator

从构建日志中可以看出,这是错误:

You're not authorized to execute any SonarQube analysis. Please contact your SonarQube administrator.

我尝试过但没有解决的问题:
  • 更新声纳 token 。
  • 使用组织中其他人授予的加密 token 。
  • 向SonarQube项目授予“声纳用户”和“任何人”“执行分析”权限。

  • 我该怎么做才能解决此问题?

    最佳答案

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

    现在,为什么您的尝试不起作用?仅仅是因为当PR“来自外界”(即不是您自己的PR)时,Travis不会解码SONAR_TOKEN环境变量(在YML文件中设置为“安全”)。这是一个安全约束,可以防止任何人 fork 您的存储库,使用echo $SONAR_TOKEN更新YML文件,提交PR并谨慎等待Travis执行该文件以揭露安全的环境变量。

    分析“外部” PR是我们很快将要进行的工作,因此这很容易,直接且安全,OSS项目可以从此功能中受益。

    关于github - 从Travis CI上的Forket存储库构建拉取请求时,无权执行任何SonarQube分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39712531/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com