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: レビューを停止する
例:
- 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.