fengtan / gozerbot-burndown

Gozerbot plugin to display burndown charts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Description

Gozerbot plugin to display burndown charts.

Gozerbot is an IRC/Jabber bot. This plugin defines a command !burndown that displays the current situation of Story Points vs days in the iteration:

<owner>!burndown
<gzbot>80|\
<gzbot>SP| \
<gzbot>  |  \
<gzbot>  |   \ + (60 SP / 10 days)
<gzbot>  |    \
<gzbot>  |     \
<gzbot>  |      \
<gzbot>  |       \
<gzbot>  |        \
<gzbot>  |         \
<gzbot>  |          \
<gzbot>  |           \
<gzbot>  |____________
<gzbot> 0            20 days

Installation

Install Gozerbot e.g. for a quick setup on IRC:

sudo apt-get install gozerbot (or download https://launchpad.net/gozerbot)
vi /etc/gozerbot/mainconfig
    owner = ["~bart@127.0.0.1"]
vi /etc/gozerbot/fleet/default/config
    enable = 1
    type = "irc"
    owner = ["irc"]
    nick = "mygozerbot"
    password = "foobar"
    username = "mygozerbot"
    realname = "mygozerbot"

Enable the plugin:

cp burndown.py /usr/lib/pymodules/python2.7/gplugs/
vi /etc/gozerbot/mainconfig
    loglist = ["idle", "burndown"]
    loadlist = ["foo", "bar", "burndown"]

Make the bot join IRC:

/etc/init.d/gozerbot start
/msg mygozerbot join #mychannel

Invoke the command:

!burndown

Customization

By default the plugin is based on hard-coded values but it might be best to pull dynamic data e.g. by querying the database of a ticketing system like Trac.

This can be achieved by implementing the associated functions:

Data Default (hard-coded) value Function to implement
Total number of Story Points in the iteration 80 get_spt_maximum()
Remaining Story Points in the iteration 60 get_spt_current()
Total number of days in the iteration 20 get_day_current()
Remaining days before the end of the iteration 10 get_day_maximum()

By default the chart is displayed on 12 lines but this may be adjusted by updating the lines variable.

Debugging

tail -f /var/log/gozerbot.log

About

Gozerbot plugin to display burndown charts

License:GNU General Public License v3.0


Languages

Language:Python 100.0%