SonarQube有一个 * 主分支 * 的概念,而不管它的实际名称是什么。根据文档,关键是 * 不 * 将sonar.branch.name
属性传递给分析。
到目前为止,一切都很好。但是,当我在Github中构建的Gradle没有设置该属性时,自动分支检测就会启动,我会得到:
在“GitHub操作”中检测到分支/PR
自动配置分支'开发'
很不幸,因为现在sonar.branch.name
被设置为develop
,SonarQube不会接受它作为主分支。这个develop
在Github中被设置为默认分支,但扫描程序似乎无法检测到它。当我显式设置属性时,自动检测不会发生,但当然它仍然被设置为某个值。
现在的问题是:我可以在不设置sonar.branch.name
的情况下跳过Sonarscanner中的分支检测吗?我可以影响分支检测,使其正确检测到它位于默认分支上吗?
我们在GitHub Enterprise Server 3.5.5中使用了Github操作,以供参考。
2条答案
按热度按时间mwg9r5ms1#
我有一个答案,感觉更像是一个解决方案,但似乎是可行的。在SonarQube中,我可以 * 重命名主分支 *。这不仅仅是一个外观上的更改。我将值设置为
develop
,下一个使用sonar.branch.name=develop
的SonarQube分析被接受为主分支。这是可行的--就目前而言--但似乎不是记录在案的首选方法。hzbexzde2#
我在使用Github操作执行CICD时也遇到了同样的问题。
我使用这段代码来获取当前分支
property "sonar.branch.name", System.getenv("BRANCH")
currentBranch是在github操作中设置的变量