Skip to content

leif81/bzkanban

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bz Kanban Board

About

The bzkanban app allows you to visualize bugs from a Bugzilla server on a Kanban board.

The goal of bzkanban is to compliment the Bugzilla workflow you are already using. Each card represents one bug. And each board column represent the Bugzilla bug statuses (i.e. NEW, ASSIGNED, REOPENED, RESOLVED, CLOSED — or whatever your site has renamed them to). Basic actions like filtering, commenting, and changing the bug state (by dragging the card) can be done with the app.

The bzkanban app is implemented as a client side single-page application (SPA) using Ajax with the Bugzilla 5 server REST API. So what? Installation is very simple, it just needs access to your Bugzilla server. And your Bugzilla server database is the single source of truth, the bzkanban app is just a view of your Bugzilla database.

Screenshot

screenshot
Figure 1. bzkanban example board

Demo

Note: These are live production Bugzilla instances being viewed with bzkanban.

Requirements

  1. Client: A modern web browser capable of HTML5, CSS3, and JavaScript (tested with Chrome and Edge)

  2. Server: Access to the Bugzilla 5.0+ server with the REST API enabled.

Installation

Chose one of the following options to use the Bzkanban app.

No install! Cloud version

This is the easiest way to both try and use bzkbanban app.

Your Bugzilla server URL must be accessible from the internet (not a private intranet) for this option to work.

  1. Copy this address https://leif81.github.io/bzkanban/index.html?site=https://bugzilla.mozilla.org. Change the site= parameter to be the address of your Bugzilla server.

  2. In your web browser, paste and load this URL.

  3. Bookmark and share this URL with your team.

Note: This method uses the latest version of the source code in the GitHub master branch. You will always have the latest fixes and enhancements when you reload the app URL. The intent is the master branch is kept stable although there’s no gaurantee. Please report any issues using the GitHub issue tracker and include a proposed PR for the quickest resolution to the issue.

Locally hosted

Use this method if your Bugzilla server is on a private intranet.

  1. Clone this git repo onto your web server.

  2. Open bzkbanban/index.html and change the siteUrl option to the address of your Bugzilla instance.

  3. Start your web server (Note: A simple option is by running npm http-server within the bzkanban folder where the index.html file is)

  4. In your web browser navigate to the address of the index.html file (i.e. http://www.mycompany.com/bzkbanban/index.html). Bookmark it!

Note: To update the app, periodically do a "git pull" to receive the latest updates from the master branch.

Use

Basic board access

  1. In your web browser, navigate to the bzkanban app URL you bookmarked above.

  2. Load a board by picking a product from the 'Product' list and a milestone from the 'Milestone' list.

Board filtering

  1. Filter cards by the assignee with the 'Assignee' list. Clear the filter by choosing "ALL".

  2. Filter cards by text words with the "Search Cards" text search box.

Bug modification

  1. Bugs can be modified by modifying the original bug in Bugzilla and then reloading the bzkanban board, or with bzkanban app.

  2. Within the bzkanban app, click the log in button (top right) and enter your Bugzilla user account details.

  3. To add a comment, click on a card to open it and enter a new comment.

  4. To modify the bug state, drag a card between columns.

Configuration

These are some settings that can be manually controlled via the page URL parameters. To apply these permanently modify them in the top section of the bzkanban.js file.

  • site

    • The Bugzilla instance to load data from. Overrides the siteUrl setting. e.g. site=https://bugzilla.mozilla.org

  • comments

    • Show comment counts on cards. WARNING: it’s expensive, one more request per card. e.g. comments=true/false

  • autorefresh

    • Reload the board when external changes to bugs are detected. e.g. autorefresh=true/false