qacli upload

Perforce QACの解析結果を外部のサーバにアップロードします。


使用方法

upload  {-q|-D|-V|-s|-g <output-file>} [-P <directory>] [-K <configname>] [--username <username>] [-p <password>] [-w <password-file>] [-t <token>] [-r <directory>] [-v <file>] [-j<n>] [--upload-project <project>] [-u <directory>][--upload-source <NONE|ALL|NOT_IN_VCS>] [-a <ROOT|RELATIVE|ABSOLUTE>] [-S <snapshot>] [--snapshot-parent <parent>] [-U<[protocol://]host:port>] [-F <file>] [--] [-h] <source-file>

詳しい説明

Perforce QACの解析結果を外部のアプリケーションにアップロードすることが可能になりました。これにより、不具合の傾向の解析、コードの構造/互換性の解析などさらなる解析を実行することができます。

  • Perforce QAC Dashboard:レガシーのPerforce QAC Dashboardwebブラウザからアクセスする解析結果の集中格納です。結果はスナップショットとしてDashboardにアップロードされます。表示および、レポートをカスタマイズすることでプロジェクトのコードの質、準拠度メトリックスを経時的にモニタすることができます。
  • structure101:ソースコードの構造を可視化します。

オプション

オプション名、短縮形 デフォルト 説明
‑‑config, ‑K   複数の設定を持つプロジェクトに対しどの設定を使用するかを指定します。指定がない場合は、「デフォルト」が使用されます。
‑‑dashboard, ‑D   Dashboardに結果をアップロードするために指定します。'--qav-upload' のエイリアスです。
‑‑files,‑F   結果をアップロードしたいプロジェクトのファイルリストがあるパスを指定します。指定がない場合、結果はプロジェクト内の全ファイルに対してアップロードされます。
‑‑generate‑qav‑config, ‑g   指定されたPerforce QACプロジェクト用のDashboard クライアント設定ファイルを生成します。このファイルは、Dashboard の高度な設定を行うために、ほぼすべての環境において自動的に生成されます。このオプションは、Perforce QACのコンサルタントおよび上級ユーザによる使用を想定しています。
‑‑help, ‑h   使用方法の情報を表示し、終了します。
‑‑ignore‑rest, ‑‑   このフラグ以降のラベルの付いた引数をすべて無視します。
‑‑jobs, ‑j 0 Dashboardのアップロードに対し、同時に実行するタスクの数を指定します。数を指定しない、または、0が指定されるとqaimportがその値を決定します。
‑‑password, ‑p   Dashboardのパスワードです。Dashboardの認証情報または、パスワードファイルにトークンを使用することを考慮してください。
‑‑password‑file, ‑w   Dashboardのパスワードが含まれているファイルへのパス名です。パスワードは適切に保存、管理されなければなりません。
‑‑path‑format, ‑a   Dashboardにアップロードする前に、パスの変換方法を指定します。使用可能な値が3つあります。
  • ROOT (デフォルト):PROJECT_ROOTがパスの先頭に組み込まれています
  • ABSOLUTE:パスがその絶対値に変換されます
  • RELATIVE:パスがプロジェクトディレクトリへの相対パスとして変換されます
‑‑qaf‑project, ‑P . Perforce QACプロジェクトへの有効なパスを指定します。
‑‑qav‑upload, ‑q   Dashboardに結果をアップロードするために指定します。
‑‑repository, ‑r   バージョンコントロールのためにDashboardがアクセスできるソースリポジトリを指定します。
‑‑s101‑upload, ‑s   structure101プロジェクトへ結果をアップロードするために指定します。このオプションには'upload-location'が必要です。
‑‑snapshot‑name, ‑S   このアップロードでDashboardが使用するスナップショット(ビルド)名を指定します。名前が指定されていない場合は、以下のデフォルト名が使用されます。
  • Dashboard:YYYYMMDDHHMMSS 形式の現在の日付/時刻に基づく名前
‑‑snapshot‑parent   新しいスナップショットが直接関連付けられるDashboard親スナップショットの名前を指定します。このエントリが指定されていないか、この親スナップショットが見つからない場合、最後にアップロードされたスナップショットが親として選択されます。
‑‑token, ‑t   Dashboard にはユーザクレデンシャルではなく、用意されている認証情報トークンを使用してください。作成の詳細についてはqacli authの --dashboard を参照してください。
‑‑upload‑location, ‑u   Structure101プロジェクトが作成されるディレクトリへのパスです。
‑‑upload‑project   Dashboardがこのアップロードで使用するプロジェクト名を指定します。
‑‑upload‑source   ソースコードのアップロードの方法を指定します。以下の3つの方法があります:none all またはレポジトリにないソースコードをアップロードする
‑‑url, ‑U   結果を保管しているサーバの URLです。httpプロトコルがデフォルトです。例えば、localhost、127.0.0.1:8080、 https://prometheus:888 など
‑‑username   Dashboardユーザ名です。Dashboardの認証情報にトークンを使用することを考慮してください。
‑‑validate, ‑V   Validateに結果をアップロードするために指定します。
‑‑validate‑project, ‑b   Validateに結果をアップロードするために指定します。診断を、指定した Validate プロジェクト/ストリーム(既存している必要があります)にアップロードします。
‑‑vcf, ‑v   Dashboardへアップロードされるバージョンコントロールファイルを指定します。

注意事項

アップロードするプロジェクトはすでに解析されており、何の変更もされていないものでなくてはなりません。そうでない場合、期限切れのエラーが生じアップロードは失敗します。
Structure101にアップロードするときには、追加のstructure101ライセンスが必要になります。
さらに、--upload-location で指定する場所が存在しなければなりません。

Perforce QAC Dashboardに診断メッセージをアップロードする

任意のスナップショット名‘snap-1’を持つプロジェクトメトリックス(Dashboardサーバに既存している)にPerforce QACの診断をアップロードするには、以下のコマンドを使用します。

qacli upload --dashboard --username PRabbit --password-file pwd-file -P . --url http://localhost:8080 -–upload-project matrix --snapshot-name snap-1 –upload-source ALL

Dashboardにアップロードするときに、処理能力を強化するためにいくつかのスレッドが生成されます。スレッドの数はcoreファイルの数によります(qaimport を参照)。デフォルトで設定されているスレッドの数を'--jobs'オプションで上書きすることができます。

qacli upload -P . -D --username PRabbit --password <pwd> --upload-project matrix --upload-source ALL -U http://localhost:8080 --jobs 3
通常はこのパラメータは必要ありません。サポートに指示されたときのみ使用してください。処理の数が過度に増えるとアップロードのスピードが落ちます。

structure101にアップロードする

Perforce QACプロジェクトの解析結果を、structure101 プロジェクトにアップロードするには、以下のコマンドを実行します。

qacli upload -P <directory> --s101-upload --upload-location <directory> 

選択されたファイルをアップロードする(Dashboardおよび structure101 のみ)

単一のファイルのみを任意の無名のパラメータ <source-file> を使用してアップロードするまたは、--files オプションで作成したファイルのリストを使用してアップロードすることができます。アップロードするための融合したファイルを作るためにこの両方を使用することもできます。

単一ファイルをStructure 101にアップロードするには以下のコマンドを記述します。

qacli upload -P <directory> --s101-upload --upload-location <directory> main.c 

ファイルのリストをDashboardにアップロードするには以下のコマンドを使用します。

qacli upload --dashboard --username PRabbit --password-file pwd-file -P . --url http://localhost:8080 -–upload-project matrix --snapshot-name snap-1 –upload-source ALL --files file-list 

ファイルリストは1行につき1パスで構成されているテキストファイルです。