Sonarqube (バージョン 5.4) を評価して、
次のように機能する別の監査ツールを使用して現在のワークフローを移行したいと考えています。
本番環境で実行されている現在のバージョンは、参照バージョンです。
新しい開発バージョンが GIT からチェックアウトされ、差分プロセスが新しいファイルと変更されたファイルと参照バージョンを計算し、これらのファイルの監査を開始します。
レガシ コード (2012 年に既に存在していたコンポーネント) と新しいコンポーネント (2012 年以降) の処理も若干異なります。
次の場合、ビルドが中断します。
従来のコンポーネントからの変更されたファイル (2012 年に既に存在するファイル) のブロッカーの問題 古いコンポーネント
と新しいコンポーネントからの新しいファイル (2012 年以降に作成されたファイル) のブロッカーまたは重大な問題
Sonarqube でそれを実装する方法は?
すでに2つのことを試しました:
1.) sonar.timemachine.period1
Sonar タスクを開始する前に、Ant スクリプトでプロパティをプロダクション/リファレンス バージョンに設定します => 機能しませんでした。常に「以前のバージョンから」です。
2.) Sonarqube で 2 つの異なるプロジェクトを定義します。1 つは製品バージョン用、もう 1 つは新しい開発バージョン用です。次に、Sonarqube Web UI More / Compare Projects から知られている機能をプログラムで使用し、Blocker および Critcal の問題の差分を取得します。
問題 : プロダクション リファレンスに既に存在する 200 個の重大な問題を修正したが、開発バージョンに 200 個の新しい問題が導入された場合、重大な問題の差分が得られません。
プロジェクトの比較機能には、新しい問題または古い問題のメトリックはありません。比較されたプロジェクトの問題をカウントするだけです。