如何在Jenkins的Mac OS slave上使用SonarQube Scanner分析Typescript项目?

问题描述 投票:0回答:2

我尝试使用Mac OS从站上的SonarQube Scanner插件分析Jenkins中的TypeScript项目。

工具:

问题:

SonarTS插件尝试启动Node.js,但Node.js不在PATH变量中,请参阅log:

Caused by: java.io.IOException: Cannot run program "node": error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
    at org.sonar.plugin.typescript.ExternalTypescriptSensor.executeExternalRunner(ExternalTypescriptSensor.java:175)

研究:

我尝试在Mac上配置路径:

我尝试使用已添加的路径(/usr/bin/bin/usr/sbin/sbin):

  • 象征性的联系 但它不起作用,因为路径是写保护的(即使是管理员)。

我试图将路径传递给SonarQube扫描仪:

我还读到了关于在调用源中更改路径的信息:

typescript jenkins sonarqube sonarqube-scan
2个回答
2
投票

如果您使用的是SonarTS 1.2或更高版本,则可以尝试使用SonarQube UI在设置中指定nodejs可执行文件的路径:

enter image description here


0
投票

另一种方法是使用Environment Injector Plugin(版本2.1.5):

摘要

EnvInject插件提供以下功能:

  • 通过Jenkins Java进程删除继承的环境变量
  • 在节点(主/从)启动时注入环境变量
  • 在运行的SCM结帐之前或之后执行设置脚本
  • 在运行的SCM结帐之前或之后注入环境变量
  • 将环境变量注入为运行的构建步骤
  • 为运行注入密码值
  • 在构建结束时导出环境变量,以便了解用于每个构建的环境变量集

因此可以将Node.js的路径添加到PATH变量:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.