Per email discussions, we want to check a unified and generic Bugzilla client API written in Python into mozilla-central. This bug will track getting that landed. Feel free to move to whatever component is appropriate.
So there are several tools already written in python that have significant overlap. See http://k0s.org/toolbox/?usage=bugzilla&language=python IMHO, doing this right == making a best of breed that hopefully existing projects can start to use, not just yet-another-...
While I'm not familiar with all of these, but I can say the following seem to have implemented some of what is needed:
It'd be nice to move towards a single officially maintained library and maybe some front-end so that we can replace proliferation with innovation
(In reply to Jeff Hammel [:jhammel] from comment #1)
> It'd be nice to move towards a single officially maintained library and
> maybe some front-end so that we can replace proliferation with innovation
Definitely. I believe this is more or less what we discussed in our offline email thread.
We're on it with Berker Peksag. Will take some time but we'll do it! =)
I'm not sure how far you've gotten with this to date, but I came across https://github.com/toolness/pybugzilla while trawling through github. It could be a good project to expand upon.
(In reply to Josh Matthews [:jdm] from comment #4)
> I'm not sure how far you've gotten with this to date, but I came across
> https://github.com/toolness/pybugzilla while trawling through github. It
> could be a good project to expand upon.
Yep, this was mentioned in comment 1. I'd really like to see the several very similar libraries here combined to be a unified best of breed mozilla-official python client lib
Work is underway here: https://github.com/berkerpeksag/pyresto/tree/bugzilla (anyone is welcome to contribute). The main work is happening on https://github.com/berkerpeksag/pyresto/blob/bugzilla/pyresto/apis/bugzilla/models.py
Read-only API is around the corner and we hope to bring modification actions available soon after that.
Read-only api finished: https://github.com/BYK/pyresto/tree/master/pyresto/apis/bugzilla
Comments are welcome. Work continues for modify actions.
The end-user API is so clean \o/
I haven't dug into the core of pyresto yet. Looks like a very handy library! I love how it hides transport details from the end user. This is exactly what a client library should look like!
Agreed! I'm super pumped about what's already there so far.
This is still underway. Just wanted to give a heartbeat. Now we are in the process of adding unit tests(https://github.com/BYK/pyresto/pull/41) and mutation support to the whole API(https://github.com/BYK/pyresto/pull/40). Open to any contributions and/or feedback!
I just found https://github.com/rail/build-autoland/blob/master/utils/bz_utils.py.
https://github.com/rail/build-autoland/blob/v2/autoland/bugzilla.py is a better version of the last comment.
David Burns created a package: http://www.theautomatedtester.co.uk/blog/2014/introducing-bugsy-client-library-for-interacting-with-bugzilla.html
It looks very similar to one I started a few months back when writing a very simple Bugzilla crawler: https://bitbucket.org/indygreg/python-bzrest/src
I vote for Bugsy being the future.