SonarQubeとDevOps チェンジベロシティとの統合
CI/CD パイプラインと統合された SonarQube インスタンスに接続して、コード品質とコードセキュリティの結果を取得します。
SonarQube 統合の概要
GitHub Actions、Jenkins、および Azure DevOps パイプラインで構成されたソナースキャンは、 DevOps チェンジベロシティ でサポートされています。SonarCloud と SonarQube (オンプレミス) の両方がサポートされています。
コード品質とコードセキュリティのサマリー結果は、変更要求の関連リストまたは ServiceNow インスタンスのパイプラインのタスク実行のいずれかで確認できます。また、コード品質とコードセキュリティの結果を使用して、変更の自動化のための変更ポリシーと条件を定義することもできます。
DevOps チェンジベロシティ 全体的なコードメトリクスと新しいコードメトリクスの両方をキャプチャします。
始めましょう
アドミンまたは非アドミンの Sonar ユーザーを使用して、Sonar インスタンスをオンボーディングできます。
- アドミンユーザーの前提条件の設定
SonarQube中:すべてのプロジェクトのスキャンを構成するためのSonarQubeインスタンスへのプロジェクトレベルのアクセス権。
- アドミン以外のユーザーの前提条件の構成
- SonarQube の場合
- アドミン以外のユーザーは、分岐分析を使用して作成された分岐にアクセスできる必要があります。詳細については、 分岐分析を参照してください。
- アドミン以外のユーザーは、スキャン結果を実行して表示するプロジェクト (プライベートとパブリックの両方) に対する分析の参照権限と実行権限を持っている必要があります。
注:分岐分析を設定して、SonarCloud がメイン分岐以外のプロジェクト内の分岐を分析できるようにすることができます。SonarQubeコミュニティエディションライセンスで分岐分析を設定または実行することはできません。SonarQube Developer Edition または Enterprise Edition にアップグレードして、SonarQubeオンプレミス実装で分岐分析を設定します。 - で DevOps チェンジベロシティ
- 次のように移動する。 .
- [はい] オプションを選択して、DevOps の [アドミン以外のソフトウェア品質サマリーフラグ] プロパティを有効にします。
- SonarQube の場合
Sonar カスタムアクションと拡張機能は、それぞれ GitHub マーケットプレイスと Azure DevOps マーケットプレイスで入手できます。Jenkins の場合、Sonar スキャン結果は ServiceNow Jenkins プラグインを使用して取得されます。
ServiceNow でキャプチャされたスキャン結果の詳細については、「ソフトウェア品質結果」を参照してください。
SonarQubeをオンボーディングするには、次のいずれかのオプションを使用します。ガイド付きエクスペリエンスの場合は、ワークスペースを使用してツールをオンボーディングします。または、サービスカタログまたはクラシックエクスペリエンスを使用することもできます。