作った理由
Redmine は複数のプロジェクトを管理できますが、各プロジェクト毎にチケット一覧で表示する項目やフィルタ、ソートの デフォルト を設定することはできません。いろいろなプロジェクトを一つの Redmine で管理するとき、これが地味に辛かったりします。
Redmine Default Custom Query プラグイン
Redmine には、プロジェクト毎にチケット一覧の表示項目やらフィルタやらソートをクエリとして保存できるカスタムクエリという機能があるので、チケット一覧にデフォルトで適用するカスタムクエリを設定できるプラグインを作りました。
ソースコードは全て下記 GitHub に公開しています。
https://github.com/hidakatsuya/redmine_default_custom_query
redmine.org のプラグインにも登録してます。
http://www.redmine.org/plugins/redmine_default_custom_query
少し前に v0.0.2 を公開したのですが、昨日テストコードを書いて TravisCI させるようにしたので、一気に v1.0.0 としてリリースしました。ちなみに、個人的には v1.0.0 で満足してるので、今後積極的に開発を進める気はないです。
使い方
使い方はとてもシンプルで、プロジェクトの設定画面で "Default custom query(デフォルトカスタムクエリ)" モジュールを有効にすると、下図のような設定タブが追加されるので、デフォルトにしたいカスタムクエリを設定するだけです。
なお、表示範囲が公開 (Redmine 2.3 以前) 又は全てのユーザ (Redmine 2.4 以降) になっているカスタムクエリのみ選択できます。
チケット一覧にアクセスすると、設定したカスタムクエリが適用された状態で表示されるようになります。
ただ、常にデフォルトクエリが適用されてしまうと都合の悪いこともあるので、以下の操作を行ったときには一時的にデフォルトカスタムクエリが適用されません。
- 別のカスタムクエリを選択したとき
- フィルタを適用したとき
- サイドバーの "View all issues(すべてのチケットを表示)" をクリックしたとき
逆に以下の操作ではデフォルトクエリは解除されません。
- ソートしたとき(表のタイトルをクリックするとソートされるやつ)
それと、このプラグインを有効にすると、チケット一覧サイドバーの右上に "View default issues(デフォルトチケットを表示)" というボタンが追加されます。これをクリックすると、デフォルトクエリが適用された状態に戻すことできます。 "Issues(チケット)" タブをクリックしたときも同様です。
対応バージョン
GitHub の README.md か、 TravisCI の ビルド結果 を見て下さい。
インストール方法など
GitHub の README.md を見て下さい。
終わりに
今回初めて Redmine プラグインのテストを TravisCI で実行するようにしました。それ自体はそんなに難しくないのですが、プラグインが Gemfile を持っていたがためにだいぶハマったので、別の機会にその辺りのこともまとめれればと思ってます。
興味のある方は .travis.yml やコミットログをご覧下さい。