PyBugz

Python Interface to Bugzilla
Download

PyBugz Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Alastair Tse
  • Publisher web site:
  • http://www.liquidx.net/

PyBugz Tags


PyBugz Description

Python Interface to Bugzilla PyBugz is a Python and command-line interface to Bugzilla.It was conceived as a tool to speed up the workflow for Gentoo Linux developers and contributors when dealing with bugs using Bugzilla. By avoiding the clunky web interface, the user quickly search, isolate and contribute to the project very quickly. Developers alike can easily extract attachments and close bugs all from the comfort of the command line.PyBugz is written in Python and written in a way to be extended easily for use on other Bugzillas. I've tested the code unmodified on XenSource Bugzilla and GNOME Bugzilla.Example WorkflowThe command line program is named bugz:liquidx@qoo $ bugzUsage: bugz < subcommand > Options: -b, --base < bugzilla_url > Bugzilla base URL -u, --user < username > User name (if required) -p, --password < password > Password (if required) -f, --forget Do not remember authentication --columns < columns > Number of columns to use when displaying outputSubcommands: search Search for bugs in bugzilla get Get a bug from bugzilla attachment Get an attachment from bugzilla post Post a new bug into bugzilla modify Modify a bug (eg. post a comment) attach Attach file to a bugBy default, bugz uses http://bugs.gentoo.org/ as the Bugzilla Base URL (--base), but you can customise it to other bugzillas too:$ bugz --base 'http://bugzilla.gnome.org/' search google * Using http://bugzilla.gnome.org/ .. * Searching for "google" ordered by "number" 142505 bugzilla.gnome.org Invite google to index bugs 331250 rhythmbox Add lookup on last.fm/google music/wikipedia/allm 338341 Evolution needs 'agenda view' like google calendarTo search, we can simply use the following to get a list of bugs.$ bugz search bluetooth * Using http://bugs.gentoo.org/ .. * Searching for "bluetooth" ordered by "number" 91558 liquidx new ebuilds:bluetooth-alsa-1.6-r2.ebuild btsco-0.4 110221 docs-team Add section about OBEX on the command line to the 111151 maintainer-wanted ebuild for the GNOME Bluetooth control remot 124149 maintainer-wanted kxdocker-bluetooth-1.0.0.ebuild 137590 mobile net-wireless/bluez-utils - /lib/udev/bluetooth.sh 138277 kde kdebluetooth-1.0_beta1-r2 fails to compile with st 142393 liquidx net-wireless/bluez-libs - bluetooth.h doesIf we want to read one of the bugs, we refer to it by name:$ bugz get 142393 * Using http://bugs.gentoo.org/ .. * Getting bug 142393 ..Title : net-wireless/bluez-libs - bluetooth.h doesn`t compile cleanly with -std=iso9899:1990 flagAssignee : liquidx@gentoo.orgReported : 2006-08-01 02:25 PSTUpdated : 2006-08-02 04:14:59 PST...You can also get an attachment by number:$ bugz get 71123 | grep -i attach... ...$ bugz attachment 76050If we've fixed the bug, we can always close it by modifying the bug:$ bugz modify 12344 --fixed -c "Thanks for the patch. Committed to portage."Finally, for users, if they want to report a bug, they can do it via:$ bugz postIf authentication is required, the interface will prompt for a username and password, or if you would like to use bugz in a script, it can be passed as command line argument.$ bugz -u liquidx -p secretpassword get 1234And finally, if you would like to restrict the output width, you can use --columns:$ bugz --columns 50 get 1234Advanced Gentoo WorkflowHere is typically how I use bugz in my day-to-day Gentoo hacking.First I might search for bugz that are assigned to me:$ bugz search --assigned-to liquidx@gentoo.orgMaybe I'm bit lazy and want to do version bumps:$ bugz search --assigned-to liquidx@gentoo.org --severity enhancementSo I've got a bug here for bluez-libs:$ bugz get 143154After reading the bug I decide that I will bump the package:$ cd /usr/portage/net-wireless/bluez-libs .. bump new package ..$ emerge bluez-libs$ ekeyword \~all bluez-libs-3.1.ebuild.. testing ..$ repoman commit -m "version bump (#143154)"Then I should close the bug and inform the reporter$ bugz modify 143154 --status RESOLVED --resolution FIXED -c"thanks for your report, the new version is in portage"Or actually, we can simplify that to:$ bugz modify 143154 --fixed -c "thanks, in portage."Rinse. Wash. Repeat. Requirements: · Python


PyBugz Related Software