tree e0df96e163f0883fa917e358eb92332393b3f26a
parent e9a8184fe0e15d877e8fc43bdd59c717615bc249
author Sean Dague <sean@dague.net> 1412072906 -0400
committer Sean Dague <sean@dague.net> 1412157748 -0400

add support for getting status of individual changes

This expands the rest API for zuul for selecting a portion of the zuul
data.

The supported urls are:
 - /status: return a complex data structure that represents the entire
   queue / pipeline structure of the system
 - /status.json (backwards compatibility): same as /status
 - /status/change/X,Y: return status just for gerrit change X,Y

In the individual status case the changes are returned as a simple
array, and not in the pipeline structure.

Tests are added to demonstrate this working, as well as ensure 404 is
correctly returned when invalid urls are provided.

Co-Authored-By: Joshua Hesketh <joshua.hesketh@rackspace.com>

Change-Id: Ib8d80530cc99c222226f73046c17ab0bbf6e080b
