おまけのおまけ:closeの停止とresolved対応
デフォルトでは上記プラグインが持っている機能は
- チケットにリポジトリのコメントを連携する
- チケットをクローズする
ですが、今回対応したケースでは、チケットクローズはマネージャがしたいので、勝手にクローズされては困ったりしました。そうじゃなくてステータスをresolvedにはしたい。困った困った。
ということで、プラグイン書き換えました。
vi /usr/local/lib/python2.6/dist-packages/Trac-0.12.2.ja1-py2.6.egg/tracopt/ticket/commit_updater.py
def cmd_close(self, ticket, changeset, perm):
if not self.check_perms or 'TICKET_MODIFY' in perm:
ticket['status'] = 'resolved' <== ここ
if not ticket['owner']:
ticket['owner'] = changeset.author
これでステータス変更対象が close じゃなくて resolved になりました。
あと、デフォルトではこのチケットステータス変更用のコマンドが「close」とかで気持ち悪いので、trac.iniにこんな感じで追加。
commit_ticket_update_commands.close = resolved resolve solve fix fixed fixes
関数名も変数名も close で多少気持ち悪いけど、Core ライブラリを必要以上にいじるのも気が引けるし、こんなもんでしょ。