- Windows XP SP3
- TracLightning 3.1.1(DLはこちら)
- The Trac Ticket Workflow System(英語)
- TracLightning にはワークフローの詳細な説明が日本語で提供(http://{あなたのサーバ}/trac/SampleProject/wiki/TracWorkflow)
- Trac Workflow Examples(英語)
普通は、trac.ini に [ticket-workflow] セクションを作成し、[ticket-workflow] セクション内にサンプルを貼り付けておわり。
残念ながら、TracWorkflowAdmin にはGUIで trac.ini の {ticket-workflow} を編集できる機能がないので画像を示しながら設定例を解説します。当然、trac.ini の {ticket-workflow}セクションにコピーアンドペーストしても良いです。
使い方
設定例1:TracWorkflowAdmin の初期化で提供されるワークフロー
標準的なワークフローです。流れとしては、新規作成(new) → 担当割り当て(assigned) → 解決(closed) となります。新規作成(new) → 担当する(accepted) → 解決(closed) という流れもあり、こちらはチケットを自分で選んで処理する場合のフローです。
[ticket-workflow] accept = new,assigned,accepted,reopened -> accepted accept.default = 999 accept.name = 担当する accept.operations = set_owner_to_self accept.permissions = TICKET_MODIFY leave = new,assigned,accepted,reopened,closed -> * leave.default = 1000 leave.name = 変更しない leave.operations = leave_status reassign = new,assigned,accepted,reopened -> assigned reassign.default = 998 reassign.name = 担当を変える reassign.operations = set_owner reassign.permissions = TICKET_MODIFY reopen = closed -> reopened reopen.default = 997 reopen.name = 再オープンする reopen.operations = del_resolution reopen.permissions = TICKET_CREATE resolve = new,assigned,accepted,reopened -> closed resolve.default = 996 resolve.name = 解決にする resolve.operations = set_resolution resolve.permissions = TICKET_MODIFY
設定例2:最もシンプルなワークフロー
最もシンプルなフローです。新規作成(new) → 解決(closed) 。一人で利用している場合やワークフロー機能を使わない場合など、チケットを備忘録やタスクとしてシンプルに利用するときに良いかもしれません。
[ticket-workflow] leave = new,closed,reopened -> * leave.default = 1000 leave.name = 変更しない leave.operations = leave_status reopen = closed -> reopened reopen.default = 999 reopen.name = 差し戻す reopen.operations = del_resolution reopen.permissions = TICKET_CREATE resolve = new,reopened -> closed resolve.default = 998 resolve.name = 解決にする resolve.operations = set_resolution resolve.permissions = TICKET_MODIFY
設定例3:「確認待ち」ステータスを追加したワークフロー
フローダイアグラムは少し複雑になります。
チケットの作業が完了したとき、「確認待ち」というステータスが必要な場合があります。バグ管理の場合、開発者が対応済みと思っても、解決していないことや認識違いが多々あります。そこで、「完了」の前に必ず別の担当者による「確認」を入れることでバグが修正されたことをチェックしたり、再現しないことを確認したあとで「完了」にするためのワークフローです。
このワークフローでは完了にするためには必ず「解決・確認を依頼する」を経由しなければいけません。場合によっては直接完了できるフローを追加しても良いかもしれません。
[ticket-workflow] leave = new,assigned,accepted,reopened,closed,resolved -> * leave.name = 変更しない。 leave.default = 1 leave.operations = leave_status accept = new,assigned,accepted,reopened -> accepted accept.name = 着手する。 accept.default = 0 accept.operations = set_owner_to_self accept.permissions = TICKET_MODIFY reassign = new,assigned,accepted,reopened -> assigned reassign.name = 担当者変更 reassign.default = 0 reassign.operations = set_owner reassign.permissions = TICKET_MODIFY reject = resolved -> assigned reject.name = 差し戻す。 reject.default = 0 reopen = closed,resolved -> reopened reopen.name = 再オープンする。 reopen.default = 0 reopen.operations = del_resolution reopen.permissions = TICKET_CREATE resolve = new,assigned,accepted,reopened -> resolved resolve.name = 解決、確認を依頼する。 resolve.default = 0 resolve.operations = set_resolution resolve.permissions = TICKET_MODIFY verify = resolved -> closed verify.name = 完了を承認する。 verify.default = 0 verify.operations = set_resolution
参考資料
操作(operations)の説明
- del_owner — チケットの所有者を削除します。
- set_owner — チケットの所有者を選択された所有者か入力された所有者に設定します。
- actionname.set_owner カンマ区切りのリストか1つの値を設定することができます。
- set_owner_to_self — チケットの所有者をログインユーザに設定します。
- del_resolution — チケットの解決方法を削除します。
- set_resolution — チケットの解決方法を選択された解決方法か入力された解決方法に設定します。
trac の wiki/TracWorkflowから引用