Bugzilla has a very inefficient user interface, so I've written a command line utility to interact with it. This is mainly done to help me with closing bugs on Gentoo Bugzilla by grabbing patches, ebuilds and so on.
Alastair Tse alastair@liquidx.net. Copyright (c) 2006 under GPL-2.
PyBugz comes with a command line interface called "bugz". It's operation is similar in style to cvs/svn where a subcommand is required for operation.
To explain how it works, I will use a typical workflow for Gentoo development.
$ bugz search "version bump" --assigned-to liquidx@gentoo.org
$ bugz get 101968
[ATTACH] [87844] [stardict 2.4.7 ebuild]
[Comment #1] dushistov@----.ru : 2006-04-20 07:36 PST ...
$ bugz attachment 87844
$ bugz modify 130608 --fixed -c "Thanks for the ebuild. Committed to portage"
or if we find that the bug is invalid, we can close it by using:
$ bugz modify 130608 --invalid -c "Not reproducable"
bugz has an extensive help system for commands and options.
bugz --help gives help for the global options and subcommands, and
bugz
PyBugz supports a configuration system which defines defaults for multiple Bugzilla installations and allows the system administrator and individual users to override or add to these settings.
The supplied defaults are stored in /usr/share/pybugz.d/*.conf. The system administrator can override or add to these defaults on a site-wide basis by creating a directory /etc/pybugz.d and adding files with a .conf extension to this directory. Individual users can override or add to all of these settings by placing a file named .bugzrc in their home directory.
For more information about this configuration system, see the pybugz.d (5) man page.