2017-04-22 2 views
2

私はgradle multi moduleプロジェクトを持っています。私はルートパッケージにsrcディレクトリを持っていません。すべてがモジュールに入っています。sonle.sourcesをjenkinsにgradleで設定したのと同じ方法で設定することはできますか?

私はソーナーに展開するためのdevleのgradleソナープラグインを使用しています。

は、私はソナーをprodに展開するためのジェンキンスを使用configuration

のGradleソナープラグインを参照してください。

これは私が持っている問題はGradleのソナープラグインを動的にsonar.sourcesを設定することである私のsonar-project.properties

# Required metadata 
sonar.host.url=http://sonarqube.service.consul 
sonar.projectKey=com.domain.api 
sonar.projectName=com.domain.api 

# Comma-separated paths to directories with sources (required) 
sonar.sources=. 
sonar.inclusions=**/src/main/java/**/*.java 
sonar.exclusions=**/src/main/test/**/*.java 
sonar.test.exclusions=**/src/main/test/**/*.java 

# Language 
sonar.language=java 

# Encoding of the source files 
sonar.sourceEncoding=UTF-8 

です。

プラグインソナーでゲンキンではこれを行うことができませんでした。

答えて

1

JENKINS SonarQube plugindocumented here "は、SonarQubeサーバー接続の詳細設定をJenkinsグローバル設定で集中管理できます。それはあなたの仕事に環境変数SONAR_HOST_URLを注入することを意味し

(MVNビルドステップで使用される)

何も動的値にその同じ環境変数SONAR_HOST_URLを設定しますグルーヴィーなスクリプトを記述することができないようにしません設定します(たとえば、script using the EnvInject plugin)。

+0

EnvInjectはもはや維持されず、他のプラグインと共にインストールされた場合に問題があります。あなたの 'sonar-project.properties'に' sonar.sources'をどのように設定しますか?それ以外の場合は、どのように私のプロジェクトのためのgradarのsonar.sourcesの値を知ることができるので、私はそれをジェンキンズで使うことができますか? – BigDong

+0

@BigDongには、ParametersActionに基づく別のアプローチがあります:http://stackoverflow.com/a/25796504/6309このアイデアは、 'sonar-project.properties'を設定するのではなく、ジョブが実行されるときにそのプロパティのいくつかをオーバーライドすることです。これらのプロパティは、最初にロードすることもできます(同じgrrovyスクリプトによって):http://stackoverflow.com/a/20872275/6309。こうすることで、もともとgradleで使用されていたものを読み込むことができます。 – VonC

関連する問題