Jenkins 2.50の宣言型パイプラインで次のSonarQube(6.3)分析ステージがコンソールログのこのエラーで失敗しています:http://pastebin.com/t2ja23vC。具体的には:Jenkinsの宣言型パイプラインでwaitForQualityGateを使用
SonarQube installation defined in this job (SonarGate) does not match any configured installation. Number of installations that can be configured: 1.
更新:http://pastebin.com/HZZ6fY6V
:(SonarQubeサーバの下で、それはJenkinsfileと一致しますので)ジェンキンスの設定で "SonarGate" に "SonarQube" を変更した後、私は別のエラーが出ますjava.lang.IllegalStateException: Unable to get SonarQube task id and/or server name. Please use the 'withSonarQubeEnv' wrapper to run your analysis.
ステージはSonarQubeドキュメントの例の変形例である:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins#AnalyzingwithSonarQubeScannerforJenkins-AnalyzinginaJenkinspipeline
stage ("SonarQube analysis") {
steps {
script {
STAGE_NAME = "SonarQube analysis"
if (BRANCH_NAME == "develop") {
echo "In 'develop' branch, don't analyze."
}
else { // this is a PR build, run sonar analysis
withSonarQubeEnv("SonarGate") {
sh "../../../sonar-scanner-2.9.0.670/bin/sonar-scanner"
}
}
}
}
}
stage ("SonarQube Gatekeeper") {
steps {
script {
STAGE_NAME = "SonarQube Gatekeeper"
if (BRANCH_NAME == "develop") {
echo "In 'develop' branch, skip."
}
else { // this is a PR build, fail on threshold spill
def qualitygate = waitForQualityGate()
if (qualitygate.status != "OK") {
error "Pipeline aborted due to quality gate coverage failure: ${qualitygate.status}"
}
}
}
}
}
また、Webフックsonarqube-webhook
をURL http://****/sonarqube-webhook/
で作成しました。そのようなものか、http://****/sonarqube/sonarqube-webhook
?サーバーダッシュボードにアクセスするには、http://****/sonarqube
を使用します。
:
私はSonarGateの設定が正しいかどうかを確認していません。 jenkins-mochaを使用して、カバレッジデータを生成するためにSonarで使用されるlcov.infoファイルを生成します。
おそらく、品質ゲートの設定は間違った設定ですか?カバレッジ%が満たされていない場合、Jenkinsで仕事を失うことになります。
は最後に、私はジェンキンスのシステム構成では、以下の構成が全く必要とされるかどうかわからないです:
とITの9000ない900
おかげで、これのすべては、この機能のドキュメントに記載されていません。実際、この文書は非常に軽量でプラグ&プレイのように思えます。そうでなければSonarQubeは本当に統合をよりスムーズにする必要があります。 –
これは技術的な実装の詳細なので言及していません。私たちはそれを「プラグアンドプレイ」にすることを目指し、少なくともGradleプロジェクトでは失敗しました。それでも他のケースではうまくいくはずです。マスター/スレーブの問題を調査中です。 –
ありがとう、私はジェンキンスセットアップでスレーブを使用します。同じスレーブ(ビルドマシン)もSonarQubeサーバーをホストします。 –