使用 SonarQube Cloud 扫描您的代码,检测超过 25 种编程语言中的错误、漏洞和代码异味。
您的 SonarCloud 帐户必须首先与您的 Bitbucket 团队或个人帐户关联。SonarQube Cloud 对开源项目完全免费。如果您的代码是闭源的,SonarQube Cloud 还提供付费计划来运行私有分析。
注意:对于使用 Maven 或 Gradle 的项目,请直接执行相应的扫描器,而不是使用此管道(参见示例)。
将以下代码片段添加到您的 bitbucket-pipelines.yml 文件的 script 部分:
- pipe: sonarsource/sonarcloud-scan:4.1.0
# variables:
# SONAR_TOKEN: '<string>' # Optional
# EXTRA_ARGS: '<array of strings>' # Optional
# SONAR_SCANNER_JAVA_OPTS: '<string>' # Optional
# DEBUG: '<boolean>' # Optional
| Variable | Usage |
|---|---|
| SONAR_TOKEN (*) | SonarQube Cloud 令牌。建议使用安全的仓库或帐户变量。在这种情况下,无需在 bitbucket-pipelines.yml 文件中指定此变量。 |
| EXTRA_ARGS | 额外的分析参数(查看文档) |
| SONAR_SCANNER_JAVA_OPTS | 扫描器 JVM 选项(例如 "-Xmx256m") |
| DEBUG | 开启额外调试信息。默认值:false。 |
(*) = 必需变量。
此管道封装了 SonarQube Cloud 代码分析器的执行,以检测错误、漏洞和代码异味。然后,SonarQube Cloud 可以装饰您的拉取请求并返回代码质量信息。入门指南可在此处获取:开始使用 Bitbucket Cloud。
要使用此管道,您必须在 SonarQube Cloud 上设置一个项目,然后在您的仓库或团队/个人 Bitbucket 帐户中使用安全变量 SONAR_TOKEN 存储生成的令牌。
基本示例:
- pipe: sonarsource/sonarcloud-scan:4.1.0
更高级的示例:
- pipe: sonarsource/sonarcloud-scan:4.1.0
variables:
EXTRA_ARGS: ['-Dsonar.projectDescription="Project with sonarcloud-scan pipe"', '-Dsonar.eslint.reportPaths=report.json']
SONAR_SCANNER_JAVA_OPTS: "-Xmx512m"
DEBUG: "true"
此示例在 SonarQube Cloud 上使用项目的自定义描述,读取 eslint 生成的报告,将最大内存设置为 512MB,并启用详细输出。
如果您需要此管道的帮助,或者有问题或功能请求,请在我们的社区论坛上告诉我们。
如果您报告问题,请包括: