GitHub Burndown Chart as a Service http://radekstepan.com/burnchart
Go to file
Radek 0d38cd9bbc openshift guide, empty js array err fix 2012-11-22 10:39:20 +00:00
public cleanup of the style 2012-05-25 17:03:43 +01:00
templates openshift guide, empty js array err fix 2012-11-22 10:39:20 +00:00
.gitignore execute coffee, do not precompile 2012-05-25 18:59:32 +01:00
README.md openshift guide, empty js array err fix 2012-11-22 10:39:20 +00:00
app.coffee fix milestones with no due dates 2012-10-02 12:58:47 +01:00
config.yml closes #12 2012-09-24 17:20:14 +01:00
example.png show issues closed on that day onhover, add y axis, close #2 2012-05-24 17:14:01 +01:00
package.json openshift guide, empty js array err fix 2012-11-22 10:39:20 +00:00

README.md

GitHub Burndown App

An app that displays a burndown chart for your GitHub Issues.

image

Requirements:

You can install all the following dependencies by running:

$ npm install -d

Configure:

The app is configured by pointing to a public GitHub user/project. Do so in config.yml:

github_user:    'intermine'
github_project: 'InterMine'
project_name:   'Core InterMine Project'

The project_name key-value pair represents the title of the burndown chart that you will see in the top right corner of the page.

Milestones

Then visit your GitHub project's Issues page and create a new milestone with a date due in the future. This will represent your iteration. This app will pick the Milestone with the closest due date in the future as the current one.

Sizes

Then assign a few labels to tickets in this Milestone. These labels will represent your perceived size of the task. The label takes a form of size [number] so to say that an Issue is as big as 5 points I would create and assign this label (don't worry about the colors...):

size 5

Weekends

If you have days when you do not work on a project, edit the config.yml file with a list of days of the week when you are off. The numbers are 1 indexed and follow the international standard of starting a week on Monday, so for a Saturday and Sunday weekend do this:

weekend: [ 6, 7 ]

Use:

$ npm start

Then visit http://127.0.0.1:3000/.

The orange line - this represents you closing the Issues as you go through them. When you hover over it you will see, for each day, what the closed Issues were and how many points are left.

The blue line - this represents the dropping size of the outstanding Issues planned for the iteration/Milestone.

There is nothing to save in a database so each refresh of the page fetches all of the latest information from GitHub.

Enjoy!

Redhat OpenShift:

Create an account at http://openshift.redhat.com specifying a Node.js 0.6 "Web Cartridge" specifying the url for the app.

Install the OpenShift client tools.

Add your public key from ~/.ssh/id_rsa.pub to your account. You can use xclip to copy the key to the clipboard:

$ xclip -sel clip < ~/.ssh/id_rsa.pub

Add the remote repository, like:

$ git remote add openshift ssh://[username_hash]@burndown-intermine.rhcloud.com/~/git/burndown.git/

Push your changes:

$ git push -u openshift master

Debugging

In case of trouble, use the OpenShift client tools to debug:

$ /var/lib/gems/1.8/bin/rhc domain status

To determine the status of the app, run:

$ /var/lib/gems/1.8/bin/rhc-app status -a burndown

You can also SFTP into your instance on port 22 sftp://burndown-intermine.rhcloud.com or SSH to it.