header image

Ryuzeeの他サイト

mixi Twitter Twitter

Categories

携帯対応

QRコード

RING

人気ブログランキング



新着記事

前回、goodMoodやbadMoodを選択しても、そいつが設定されず、全部標準になってしまうという問題にぶつかったが、これは結局ソースコードを追う限り、QUERY_STRINGが正しく取得できていないためであった。具体的には
120行目付近からある

if req.args.has_key('badMood'):

のあたりで、リクエストパラメータにbadMood、okMood、goodMoodがあるかどうかを調べているのだが、リクエストの際に

/nikoniko?goodMood

のようにキー名のみになっていて、値が入っていない(=もない)ため、has_keyでキーが無いと判定されるのが原因っぽい。
なので、修正としては

/nikoniko?goodMood=dummy

のようにキーの存在を明示してあげるように、同梱のテンプレートを修正すれば良い。修正箇所は、ダウンロードしたソースのtemplates/nikoniko.csの27行目から29行目。それぞれ

<a href="?badMood">
</a><a href="?okMood">
</a><a href="?goodMood">

の箇所を

</a><a href="?badMood=">
</a><a href="?okMood=">
</a><a href="?goodMood=">

に修正する。

前回の日付周りの修正とこのテンプレートの修正が終わったら、再度いつものようにインストール作業をして、プラグインを有効化する。
すると以下のような画面を表示することが出来る。
NikoNikoPlugin

これをベースに更にアイコンを変えていくと良い。以下はNikoNikoPluginの画像を、NicoCaleMacroの画像に入れ替えたもの。こっちの方がよいかな。
NikonikoPluginImageChange

2008/05/02 03:58:57 Trac 1 Comments
add Hatena Bookmark Tags: , , ,

ExcelReportPluginは便利なのだが、若干問題があるので修正してみた。

問題点は以下の通りだ。
・複数プロジェクトに導入すると、その個数分だけ、出力のリンクが追加されてしまう。
 (本家サイトでも報告済みでここに記載がある)

これに対応するためには、pluginsディレクトリ内に直接excel_report_plugin.pyを配置するのではなく、egg形式にして、共通ディレクトリに配置する。

手順は以下の通り。
1. trac-hacksからNew Plugin Generatorを入手して、適当な場所に解凍する。
2. 解凍した場所で以下のコマンドを実行する。

python newegg.py excel_report_plugin

これによりexcel_report_plugin-pluginというディレクトリの中にsetup.pyや各種ディレクトリが出来上がる。
3. この中にexcel_report_pluginというディレクトリが出来上がるので、excel_report_plugin.pyを配置する。
4. ここまで出来たらいつものように

python setup.py install

を実行する。これによりExcel_report_plugin-0.1-py2.4.eggがsite-packagesディレクトリにインストールされる。
5. 最後にプラグインを有効化する。

これでOK。
なお、setuptoolsでは依存性のチェックやなんかも出来るので覚えておいて損はなさそう。

2008/05/01 03:55:58 Trac none Comments
add Hatena Bookmark Tags: , ,

今度は各チケットにどれくらいの時間がかかっているか管理したいので、Timing and Estimation Pluginを導入してみる。

■インストール

# http://trac-hacks.org/svn/timingandestimationplugin/branches/trac0.10
# cd trac0.10/
# python setup.py install

trac.iniには以下を追加

[components]
timingandestimationplugin.* = enabled

trac環境をアップグレード
(/path/to/tracは自身の環境に合わせる)

# trac-admin /path/to/trac upgrade
Done
Timing and Estimation needs an upgrade
Upgrading Database
Creating bill_date table
Creating report_version table
Upgrading report_version table to v4
Dropping report_version table
Upgrading reports
Upgrading fields
Upgrading usermanual
Done Upgrading
Upgrade done.

そして以上が終わったらapache再起動する。

■使い方
チケットをいじくるときに、想定所要時間(Estimated Hours)、所要時間(Add Hours to Ticket)、請求対象(Billable)かどうかを入れていく。
レポート画面では、それぞれの予実の差や合計値などが閲覧できる。

■個人的な感想
もうちょっと完成度が高いと良いかなぁ。
マニュアルにも記載があるのだが、インストールすると「チケットを見る」の中にレポートが数種類追加されるのだが、どれをクリックしても

Report execution failed: Dynamic variable '$NEW' not defined.

といわれてしまい、しかもこれは仕様で「management」タブの中から見ろ、と書かれている。
こういうのはちょっと苦手。

ただ、実績の集計が出来るというのは従量課金で仕事をしているケースでは有効だと思われる。(カスタムフィールド使えば良いという話もある)

2008/04/30 01:53:55 Trac none Comments
add Hatena Bookmark Tags: , ,

複数のTracプロジェクトをまとめてくれるTraM(Trac Multi)をインストールしてみた。

■インストール

svn co https://svn.rectang.com/tram/trunk
cd trunk
python setup.py install

■設定
□まとめる対象となる各プロジェクトに以下のように設定する。

[components]
tramplugin.* = enabled

※各所でtrac.ticket.report.* = disabledに設定しないと動作しないという記述があったが、むしろこちらを設定した方が動かないように見える

□まとめプロジェクトとSVNレポジトリを作成
ここでまとめ用のプロジェクトとSubversionのレポジトリを作成する。プロジェクトのディレクトリはallでないといけない。

cd /var/svn
svnadmin create all
chown -R apache:apache all
cd /var/www/trac
trac-admin create all initenv
chown -R apache:apache all/
(以下略)

□続いてapacheの設定を行う
httpd.confもしくはそれに準ずるファイルで下記を

PythonHandler trac.web.modpython_frontend

以下の通り変更する

PythonHandler tram.modpython_frontend

Trac全体としてはhttpd.confは以下のようになる。

<location /trac>
SetHandler mod_python
#PythonHandler trac.web.modpython_frontend
PythonHandler tram.modpython_frontend
PythonOption TracEnvParentDir /var/www/trac
PythonOption TracUriRoot /trac
SetEnv PYTHON_EGG_CACHE /tmp/.python_eggs
</location>
<locationmatch "/trac/[^/]+/login">
AuthType Basic
AuthName Trac
AuthUserFile /var/www/trac/.passwd
Require valid-user
</locationmatch>

この後apacheを再起動しておく。

□画面イメージ

■使用感
これ結構いいね。プロジェクトが多数あるような場合、状況を一覧して鳥瞰するのに効果的。ソースのレポジトリも追えるし、チケットも一覧できる。これならXMLRPCでゴリゴリしなくても何とかなるかもしれない。

2008/04/29 02:40:13 Trac none Comments
add Hatena Bookmark Tags: , ,

StractisticsPluginはプロジェクトの状況をFlashを使って視覚的に表示するプラグイン。

インストール

easy_install http://trac-hacks.org/svn/stractisticsplugin/0.10/tags/0.3.2

設定

[components]
stractistics.* = enabled

インストールが終了すると上部のタブにStractisticsが追加される。
クリックすると状況が表示される。
現在表示されるものは下記の3つである。

  • 過去12週間のコミット数の推移
  • 過去30日間のチケットの状況推移
  • 過去12週間のWikiの状況推移

サンプルは下記の通りだ。
stratistics

導入に際してのオプションは下記の通りである。

repository_authors_limit
コミット数の推移で上位何人のコミッターまで表示するか。デフォルトは5人まで
wiki_authors_limit
Wikiの状況推移で上位何人の編集者まで表示するか。デフォルトは5人まで
ignored_repository_authors
コミット数の推移で集計から除外するコミッターを指定する。複数指定する場合はカンマ区切り
ignored_wiki_authors
Wikiの状況推移で集計から除外する編集者を指定する。複数指定する場合はカンマ区切り

Trac+Subversionでないとモノを作れない感じなのだが、それについてのメモ。

Subversionでコミットした際にメールを送る方法
プロジェクト内のhooksディレクトリに、post-commitおよびcommit-email.rbを用意する。いずれも実行権限が必要で、ファイルオーナーは他のSubversion関連のファイルと同じにしておくこと(うちはapache)
Subversionでコミットした際にコミットログにTracのチケット番号を入れて自動でクローズするようにする
メールと同様。まずpost-commitを修正して、trac-post-commit-hookを呼び出すようにすればよい。trac-post-commit-hookについても実行権限、適切なパーミッションが必要。

Tracでチケットの追加・更新時にメールを送る。
trac.iniの[notification]の項目にある、smtp_enabledをtrueに設定した上で、送信先のアドレスなどを設定すれば良い。設定変更後はapacheの再起動が必要。

参照:http://yamashita.dyndns.org/blog/247/

 

add to hatena hatena.comment (0) add to del.icio.us (0) add to livedoor.clip (0) add to Yahoo!Bookmark (0) Total: 0