动态设置声纳属性文件的值

时间:2018-12-30 19:19:13

标签: sonarqube

我有一个声纳属性文件,仅在分支不是主节点的情况下,我才想在其中动态地将值分配给sonar.branch.target。我有一个构建参数$ {env.BRANCH_NAME}来分配值。

sonar.login=
sonar.password=
sonar.host.url=
sonar.projectKey=xxxx
sonar.projectName="yyyyy"
sonar.projectVersion=1.0.0
sonar.sources=src/app
sonar.test=src/app
sonar.sourceEncoding=UTF-8
sonar.exclusions=**/node_modules/**
sonar.test.inclusions=**/*.spec.ts
sonar.ts.tslintconfigpath=tslint.json
sonar.typescript.lcov.reportPaths=coverage/lcov.info
sonar.typescript.exclusions=**/node_modules/**,**/typings.d.ts,**/main.ts,**/environments/environment*.ts,**/*routing.module.ts
if [ ${env.BRANCH_NAME} != "master" ]; then
    sonar.branch.target= "master"
    sonar.branch.name= ${env.BRANCH_NAME}
    echo "inside if statement"
fi

我想在我的构建参数不等于master时执行此逻辑。但是if块正在执行,而与该逻辑无关。请帮助纠正此问题。

1 个答案:

答案 0 :(得分:0)

找到相同的解决方案。为了使它起作用,对sonar-project.properties文件进行了如下更改。

if [ ${env.BRANCH_NAME} != "master" ]
then
  SONAR_BRANCH=${env.BRANCH_NAME}
  SONAR_TARGET=master
else
  SONAR_BRANCH=${env.BRANCH_NAME}
  SONAR_TARGET=
fi
sonar.login=
sonar.password=
sonar.host.url=
sonar.projectKey=
sonar.projectName=
sonar.projectVersion=1.0.0
sonar.sources=src/app
sonar.test=src/app
sonar.sourceEncoding=UTF-8
sonar.exclusions=**/node_modules/**
sonar.test.inclusions=**/*.spec.ts
sonar.ts.tslintconfigpath=tslint.json
sonar.typescript.lcov.reportPaths=coverage/lcov.info
sonar.typescript.exclusions=**/node_modules/**,**/typings.d.ts,**/main.ts,**/environments/environment*.ts,**/*routing.module.ts
sonar.branch.name=${SONAR_BRANCH}
sonar.branch.target= ${SONAR_TARGET}