是否可以在 sonar-project.properties 文件中使用环境变量
Is it possible to use environment variable in sonar-project.properties file
我正在通过 Jenkins 构建执行声纳,有一个用例 'src' 位置根据构建而变化,所以我想使用环境变量来指定 'src' 路径。
例如在sonar-project.properties我想指定如下所示:
src= c:/project/workspace
而不是我想使用 src =${SONAR_RUN_WORKSPACE}
不,sonar-project.properties
不支持环境变量。无论如何,回到您的用例:您最好使用 sonar.sources
的相对路径,这样,无论分析是 运行(即 Jenkins 的任何工作空间),源总是在预期的位置找到(来自项目的基本目录)。
您不能将 env 变量传递到 sonar-project.property 文件中。
如果您从 jenkins 创建声纳-project.property 文件,您可以使用带参数的构建。
(或)
创建声纳-project.properties 没有 sonar.source。
使用参数变量 {path} 创建构建,从用户获取每个构建的 src 路径,
在 sh.
中用 sonar.source=${path} 映射变量
将 sonar.source 附加到 sonar-project.properties 中,使用 (>>) 或来自 jenkins 的 cmd 为每个 sh 构建。
eg) sonar.source="path" >> sonar-project.properties
终于工作 space 包含带有 src 路径的 sonar-project.properties 文件。
从 SonarQube Scanner 2.9 版开始 sonar-project.properties
支持环境变量(参见 SQSCANNER-9)。
所以,这现在应该可以工作了:
sonar.sources=${env.SONAR_RUN_WORKSPACE}
我正在通过 Jenkins 构建执行声纳,有一个用例 'src' 位置根据构建而变化,所以我想使用环境变量来指定 'src' 路径。
例如在sonar-project.properties我想指定如下所示:
src= c:/project/workspace
而不是我想使用 src =${SONAR_RUN_WORKSPACE}
不,sonar-project.properties
不支持环境变量。无论如何,回到您的用例:您最好使用 sonar.sources
的相对路径,这样,无论分析是 运行(即 Jenkins 的任何工作空间),源总是在预期的位置找到(来自项目的基本目录)。
您不能将 env 变量传递到 sonar-project.property 文件中。
如果您从 jenkins 创建声纳-project.property 文件,您可以使用带参数的构建。
(或)
创建声纳-project.properties 没有 sonar.source。
使用参数变量 {path} 创建构建,从用户获取每个构建的 src 路径,
在 sh.
中用 sonar.source=${path} 映射变量
将 sonar.source 附加到 sonar-project.properties 中,使用 (>>) 或来自 jenkins 的 cmd 为每个 sh 构建。
eg) sonar.source="path" >> sonar-project.properties
终于工作 space 包含带有 src 路径的 sonar-project.properties 文件。
从 SonarQube Scanner 2.9 版开始 sonar-project.properties
支持环境变量(参见 SQSCANNER-9)。
所以,这现在应该可以工作了:
sonar.sources=${env.SONAR_RUN_WORKSPACE}