openSUSE:レビューツール

移動先: 案内, 検索


osc を利用した対話的なレビュー

まずは大きめの端末ウインドウを開いてから、 "osc request list -U <リクエスト ID> -i" のように入力して、表示された一覧を確認します。ここには送信要求の内容のほか、下記のような選択肢が表示されます (カッコ内の文字が入力すべき文字です。たとえば "i" と入力すると "diff" の意味になります):

 "d(i)ff/(a)ccept/(d)ecline/(r)evoke/(b)uildstatus/c(l)one/(e)dit/(s)kip/(c)ancel"

主な選択肢は下記のとおりです:

  • diff: エディタを開いて差分を表示する
  • accept: レビューまたは要求を受け入れる ("-m コメント" でコメントを記述することもできます)
  • decline: レビューまたは要求を拒否する。以前に diff を実行している場合は、エディタで再度差分が表示されますので、そこから必要な箇所をコピーするなどして、拒否時のメッセージを入力できるようになります。
  • revoke: 要求の取り消し
  • buildstatus: パッケージの構築状況を表示する
  • clone: レビューしている SR を複製して、新しい SR を作成する
  • skip: 現時点ではレビューやリクエストを無視し、次のものに移動する
  • cancel: レビューを停止する
"diff" (差分) と "decline" (拒否) は入力を間違いやすいことに注意してください。差分を確認したいからといって、 "diff" の意味で "d" を入力してしまいがちですが、これは "decline" (拒否) の意味になってしまいます。そのようなことが多く発生したことから、 "decline" の処理では確認メッセージが表示されるようになっていて、間違って "d" を入力しても、後から取り消すことができるようになっています。

例:

  • osc review list -G opensuse-review-team openSUSE:Factory -i: "opensuse-review-team" グループに対して開かれているレビューのうち、 openSUSE:Factory プロジェクトをターゲットとしているすべてのものを対話的に実施する
  • osc request list -U (ユーザ名) -i: (ユーザ名) で指定したユーザに対して開かれているレビューのうち、許可または拒否することのできるすべてのレビューを実施する

もしもグループのメンバーである場合は、 ~/.oscrc ファイル内に "review_inherit_group = 1" オプションを追加してください。このように設定することで、コマンドラインオプション "-G opensuse-review-team" を指定した場合と同様に、グループにあてられた要求を一覧表示できるようになります。

Web UI を利用した対話的なレビュー

まずは OBS プロジェクト一覧 を表示して、その中の冒頭に書かれた "Main Projects" をご確認ください。ここに書かれているプロジェクトが、現時点でレビューを実施するプロジェクトです。まずはレビュー対象のプロジェクトを選択してください。

選択すると、プロジェクトの概要ページに移動します。 "Overview" セクションには "open incidents" としてリンクが書かれていますが、それをたどることで、現在開かれているインシデント (案件) を一覧表示することができます。このリンクをたどってください。

一般的に、レビュー担当者は "review" の状態にあるもののみをレビューします。 "review" の状態にあるすべてのインシデントには、 "Info" の列に黄色い旗が表示されます。

レビュー対象の SR (送信要求) ごとに、まずはレビューの準備ができていることを確認します。具体的には、下記の項目を確認します:

  • SR 内の Summary が記述されていること。
  • patchinfo 内のバグ番号や CVE の参照情報がパッケージ内のものと合致していること ("Issues" 列)
  • "Build" 列に緑色のチェックマークが表示されている (つまり、メンテナ側のプロジェクトで構築が正常終了している) こと。
レビューの詳細 (レビュー方法、受け入れや拒否の基準など) についてはここでは説明していません。詳しくはポータル内の他のページをご覧ください。

レビューを実施するには、黄色の旗をクリックします。 "Request <SR#> (review)" ページが表示されます。

画面のメインセクション内には、各パッケージに対するソースコードの差分が表示されます。メインセクションのタブを利用して、パッケージを切り替えてください。少なくとも 1 つのタブ内に、 patchinfo が含まれています。

また、右側の "build results" には構築結果が、 "mentioned issues" には Bugzilla の情報が表示されます。

レビューチームのメンバーである場合、ここからコメントを入力して "accept review" (レビュー受け入れ) または "decline review" (レビュー拒否) を押すことができます。このレビューを飛ばしたい場合 (後から実施する場合、もしくは他の誰かにレビューしてもらいたい場合) は、ブラウザの "戻る" ボタンで戻ってください。

テンプレート

パッチに対する言及が存在しない場合

Please see
http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines#Patch_live_cycle

=> Added / removed patches need to be mentioned by name in .changes, in
order to get a full trail of life cycles.

バグ番号の表記が無いか、書式が正しくない場合

Please see 
https://en.opensuse.org/openSUSE:Howto_write_good_changes#Bug_fix.2C_feature_implementation

=> Anytime you have fixed a bug (or implemented the feature), you have to mention the number of bug in changes. As fix should be reported in upstream bugzilla, also add a prefix before the number, so people will know where to find an information. 

The full list of prefixes is available on https://en.opensuse.org/openSUSE:Packaging_Patches_guidelines#Current_set_of_abbreviations

%install における buildroot のクリーンアップが適切でない場合

Please read the thread about "cleaning the buildroot correctly" on
 http://lists.opensuse.org/opensuse-packaging/2007-02/msg00006.html
and fix your package ...   Thanks!

.changes ファイルにバージョン番号しか書かれていない場合

Please be a bit more verbose in the changes entry ... (not just version number).

Please read https://en.opensuse.org/openSUSE:Howto_write_good_changes for more details about a good changelog entry.