gerrit-dash-creator/README.rst
Ian Wienand 16fef44f00 Autobuild of dashboard overview plus various fixes
This adds a call in sphinx to automatically generate the dashboard
description pages.  It's a little bit of a hack, but works with "tox
-e docs" and the readthedocs build.  This means we don't have to have
an external job running a separate build of the dashboard overview
page.

A couple of other things to integrate this and make the docs more
usable; we use the readme as the main page, fix up the links, use
sections in the template and add a clickable link to the dashboard in
each overview page.

I'ved tested this with readthedocs which you can see at [1]

[1] http://gerrit-dash-creator-dashboards.readthedocs.org/en/latest/

Change-Id: I027a21a40a0e35817b8a29996a48393743b282b0
2016-03-22 14:08:45 +11:00

3.0 KiB

Gerrit Dashboard Creator

Creates custom URLs for Gerrit dashboards

The Problem

The Gerrit code review system is great, until it gets completely out of control with too much content in it. When you are staring at a single list of 400 reviews, it's completely overwhelming.

Sisyphus never had it so good.

The Solution

I've found that slicing up the giant review task into a set of smaller buckets that you can see actually get smaller as you go through them becomes a far more motivating way of looking at reviews.

As of Gerrit 2.6 there is support for building custom dashboards, both on the server side, and on the client side (as a URL). These are really powerful.

The server side definition for these dashboards is pretty easy to understand, however you need really extreme levels of permissions to create these dashboards. The client side definition is a single URL which is hard to manipulate inline.

This tool takes the server side definition, creates the client side encoding of it, and spits that URL out on the command line. You can then load it in your browser and off you go.

Usage

It's super easy, just check out the code, and pass 1 argument, which is the dashboard file you want the URL for:

$ ./gerrit-dash-creator dashboards/devstack.dash
https://review.openstack.org/#/dashboard/?foreach=%28project%3Aopenstack%2Ddev%2Fdevstack+OR+project%3Aopenstack%2Ddev%2Fdevstack%2Dvagrant+OR+project%3Aopenstack%2Ddev%2Fbashate+OR+project%3Aopenstack%2Ddev%2Fgrenade%29+status%3Aopen+NOT+owner%3Aself+NOT+label%3AWorkflow%3C%3D%2D1+label%3AVerified%3E%3D1%2Cjenkins+NOT+label%3ACode%2DReview%3E%3D0%2Cself&title=Devstack+Review+Inbox&Needs+Feedback+%28Changes+older+than+5+days+that+have+not+been+reviewed+by+anyone%29=NOT+label%3ACode%2DReview%3C%3D2+age%3A5d&You+are+a+reviewer%2C+but+haven%27t+voted+in+the+current+revision=NOT+label%3ACode%2DReview%3C%3D2%2Cself+reviewer%3Aself&Needs+final+%2B2=label%3ACode%2DReview%3E%3D2+limit%3A50+NOT+label%3ACode%2DReview%3C%3D%2D1%2Cself&Passed+Jenkins%2C+No+Negative+Feedback=NOT+label%3ACode%2DReview%3E%3D2+NOT+label%3ACode%2DReview%3C%3D%2D1+limit%3A50&Wayward+Changes+%28Changes+with+no+code+review+in+the+last+2days%29=NOT+label%3ACode%2DReview%3C%3D2+age%3A2d

Then put the URL in your browser and off you go.

The latest dashboards are available at http://gerrit-dash-creator.readthedocs.org/en/latest/dashboards/index.html

Contributions Welcomed

If you have a dashboard definition that your OpenStack team finds useful, please submit a change request via git-review. The list of current outstanding changes can be seen at:

https://review.openstack.org/#/q/status:open+project:openstack/gerrit-dash-creator,n,z

I'm very happy to include additional interesting examples that teams find useful, and make it possible for teams to explore other approaches to reviewing code.

If you have questions please find me on #openstack-dev, #openstack-infra, or #openstack-qa on FreeNode to discuss.