2017-03-21 30 views
4

私はSonarQubeとGitlabを統合しようとしているプロジェクトの一環として開発コミュニティや特にDevOpsのプラクティスにはかなり新しく、SonarQubeとGit CI(Continuous Integration)でR & D Gitlabではなく、GithubとSonarQube用のプラグインがリリースされています。GitlabとSonarQubeの統合

SonarQubeを使ってGitLabを設定すると、すべてのプルリクエストに対してコードの品質を検査し、これらの2つを統合するベストプラクティスがどのようになるかが現実的です。

おかげ

答えて

4

現在GitLabと統合/ MR-分析を提供することを目指して2つのコミュニティ主導のプラグインは(私の知る限り承知しています)があります。

両者は現在、次のリリースのフィードバック段階を踏んでおり、両方ともそのリリースで更新センターに着陸することを目指しています。

両方とも、GitLabに新たに見つかった違反をコメントに提供するビルドを実行することができます。両方とも、SonarSourceのGitHubプラグインに非常に触発されています。

しかし、私は最初に開発者であり、偏見を持っているため、2人のうちのどちらを使うべきかアドバイスする立場にいません。

+0

素晴らしい仕事! Gitlabで使用するプラグインの設定に関するドキュメントを見つけることができませんでした。 – Adi

+0

リソース@ Johnneiありがとう。ちょうど質問:それはフリースタイルのプロジェクトでこれらのいずれかを実行することは可能ですか?例えば、非mvn、非gitlab-CI ...ありがとう。 –

+0

私が知っている限り、両方のプラグインは「ただの」SonarQubeプラグインなので、正しいプロパティを提供する限り、どのSonar Scannerとも連携します。 私はJava/MavenとGitLab CIを主に使用していました。 – Johnnei

7

本当にプラグインは必要ありません。 はあなたの.gitlab-ci.yml

stages: 
- build 
build_master: 
    image: maven 
    stage: build 
    artifacts: 
    paths: 
    - target/*.jar 
    script: 
    - mvn package sonar:sonar -Dsonar.host.url=https://sonar.yourdomain.tld/ 
    only: 
    - master 

にこのようなものを作り、すべてのマスター・プッシュがテストされます! (これはJavaプロジェクト用です...)

+0

この回答は非常に限られています。 Windowsはどうですか? C#やC++はどうですか? GitLab UIに解析結果が表示されない場合、両方のツールのUIリンクはどうですか? – Ivan

+0

こんにちはイワン、私はあなたがこのように他のものを作ることができると確信しています。 Windows用のものについては、前回のPowerShellイメージを使用していました。 – Joerg

+0

それは簡単ではない、私を信頼してください。 SonarQubeランナーを呼び出すことは、質問の唯一の側面です。 Windows Dockerイメージには、SonarQubeランナーがインストールされていません。現時点でGitLabのバージョンではWindows gitlab-runnerでDockerエグゼキュータを使用することはできません。 C++用の公式なSonarQubeプラグインはありませんが、たくさんのオプションがあります。はるかに多くの手動作業。次に、質問の別の側面 - 私は上記のようにUIの統合。 – Ivan

関連する問題