0

説明を含む特定のプロファイルからすべての Sonarqube ルールのリストを取得し、それを Excel、csv、または xml としてエクスポートする方法を見つけようとしています。リストを xml にエクスポートし、[品質プロファイル] の [パーマリンク] オプションを使用して Excel に変換することはできますが、これは各ルールに関連付けられた優先順位、キー、言語、およびプロファイル名の詳細のみを提供し、ルールの説明のようなものは提供しません。

フォーラムで次の質問を見つけました。この質問には、xml ファイルをダウンロードする手順の概要が示されています。詳細はリストされていますが、必要な説明は含まれていません。

Sonarqube からコーディング ルールのリストをエクスポートする

また、各ルールの説明を取得する方法について同じ質問をするこの質問も発見しましたが、必要な詳細を取得できませんでした

説明付きのソナー品質プロファイル ルールのエクスポート

品質プロファイル セクションのパーマリンクで取得した xml から repositoryke​​y と key_name を参照することにより、前のリンクで提供されたコマンドを実行して、必要な結果を取得することができました。

curl -X GET -v -u admin:admin " http://[Sonarservername]:[port]/api/rules/show?key=[repositoryke​​y]:[key_name] " --output file.xml

このコマンドは必要な結果 (ルールの説明) を提供しますが、ルールごとに repositoryke​​y および key_name を変更する必要があります。550 を超えるルールの説明が必要なため、これは実現不可能です。

説明/ルールの説明テキストを取得するには何が必要ですか?

助けてください。

4

2 に答える 2

8

私の理解が正しければ、 /api/rules/search Web サービスがニーズをカバーするはずです。Java ルールのリストについては、https://sonarcloud.io/api/rules/search?languages= java を参照してください。

API は、 https ://sonarcloud.io/web_api/api/rules/search に記載されている多くのパラメーターをサポートしています(水平線の上にある [パラメーター] ヘッダーをクリックして、説明を開きます)。

たとえば、rule_key パラメータを使用すると、特定のルールを検索できます。S2065 ルール (シリアル化できないクラスのフィールドは「一時的」であってはなりません) に関する情報を見つけるには、https ://sonarcloud.io/api/rules/search?rule_key=squid:S2065 を使用できます。

于 2016-08-18T16:47:37.610 に答える
3

SONAR 4.5.6 と Sonar 7.3 でこの問題が発生しましたが、API を介してすべての情報を取得します。

ルールを取得するには、品質プロファイル キーが必要です。

追加のパラメーター:

1 - qprofile: QP のキー

2 - ps: ページごとに取得するルールの数。

3 - 言語: プロファイルの言語

4 - アクティベーション: true、qprofile パラメータを使用するために必要

この API 呼び出しはすべて、すべての情報を JSON 形式で返します。

最後に、この JSON を Excell に変換するために、このような ONLINE コンバーターを使用しました

http://www.convertcsv.com/json-to-csv.htm

JSON をコピーして貼り付け、変換オプションを選択します。出力オプション (出力フィールド区切り記号) に注意して、「;」を選択します。JSON to Excel オプションをクリックします。

于 2018-11-23T13:37:34.410 に答える