Skip to main content

Bugzilla CLI client, XML-RPC binding and VCS plugins

Project description

Provides a CLI program and Python library for interacting with the Bugzilla bug tracking system, and plugins for version control systems that enable interaction with Bugzilla installations.

Requires Python 2.7 and works with Bugzilla 4.0 or later.

The Bazaar plugin requires Bazaar 2.0 or later.

bugzilla program

Command-line application for interacting with Bugzilla servers. The following subcommands are available:

assign:

Assign bugs to the given user.

block:

Show or update block list of given bugs.

cc:

Show or update CC List.

comment:

List comments or file a comment on the given bugs.

config:

Show or update configuration.

depend:

Show or update dependencies of given bugs.

desc:

Show the description of the given bug(s).

dump:

Print internal representation of bug data.

edit:

Edit the given bugs.

fields:

List valid values for bug fields.

help:

Show help.

history:

Show the history of the given bugs.

info:

Show detailed information about the given bugs.

list:

Show a one-line summary of the given bugs.

new:

File a new bug.

priority:

Set the priority on the given bugs.

products:

List the products of a Bugzilla instance.

search:

Search for bugs matching given criteria.

status:

Set the status of the given bugs.

time:

Show or adjust times and estimates for the given bugs.

bzlib

Library providing access to Bugzilla instances through the XML-RPC interface. Supports bug creation, bug information and comment retrieval, updating bug fields and appending comments to bugs.

Bazaar plugin

This plugin, when enabled for Bugzilla bugtrackers, marks bugs fixed on those trackers when bzr commit is invoked with the --fixes argument. It also adds a comment to the bug that includes the branch location, the commit message, the list of changed files and other details about the commit.

Installation

# via pip
pip install bugzillatools         # as superuser
  -or-
pip install bugzillatools --user  # user site-packages installation

# via easy_install
easy_install bugzillatools        # as superuser

# from source
python setup.py install           # as superuser
  -or-
python setup.py install --user    # user site-packages installation

The bin/ directory in your user base directory will need to appear on the PATH if installing to user site-packages. This directory is system dependent; see PEP 370.

If installing to user site-packages, some manual moving or symlinking of files will be required for the Bazaar plugin to be detected by Bazaar. PEP 402 speaks to this shortcoming.

Configuration

A configuration file is looked for at ~/.bugzillarc. Its format is INI-like; the following configuration objects are understood:

core

server

Name of the default server

alias

Option names are aliases; their values are the replacement.

server.<name>

Define a server. bugzillatools supports multiple servers; the --server=<name> argument can be used to select a server.

url

Base URL of the Bugzilla server.

user

Bugzilla username.

password

Bugzilla password

assign_status

When the assign command is used, if the current status of a bug is in the first list, the status will be updated to the second item. The format is: <oldstatus>[,<oldstatus>]* <newstatus>. An appropriate value for the default Bugzilla workflow might be: "UNCONFIRMED,CONFIRMED IN_PROGRESS".

default_product

If provided and if the provided string corresponds to the name of a product on this server, use that product as the default. The user will still be prompted to confirm.

Example .bugzillarc

[core]
server = example

[server.example]
url = http://bugzilla.example.com
user = user@example.com
password = sekrit

[alias]
fix = status --status RESOLVED --resolution FIXED
wfm = status --status RESOLVED --resolution WORKSFORME
confirm = status --status CONFIRMED

Changelog

bugzillatools-0.5.2 :: Tue Feb 7 2012

New features:

  • priority command: set the priority of the given bugs.

  • comment command learned the --which argument, for limiting output to only the given comment(s).

  • search learned the --version argument.

  • edit command: edit the product version of a bug.

Bug fixes:

  • search command: fix crash when zero bugs returned

Other changes:

  • -V replaces --version for displaying program version information.

bugzillatools-0.5.1 :: Tue Jan 10 2012

Bug fixes:

  • new command: fix assigned_to user matching.

bugzillatools-0.5 :: Tue Jan 3 2012

New features:

  • search command: search for bugs matching given criteria.

  • history command: display bug history.

  • new command: new config server.<name>.default_product, if set and if corresponding to a product on the server, specifies the default product.

  • new command: perform user matching when specifying the assignee or cc list during bug creation.

Bug fixes:

  • time command: calculate the hours worked on a bug.

bugzillatools-0.4 :: Wed Nov 30 2011

New features:

  • time command: show or adjust times and estimates for given bug. At time of writing, limitations in Bugzilla’s RPC API prevent the display of cumulative time for a bug.

  • desc command: show the description of the given bugs.

  • dump command: print internal representation of bug(s).

  • comment learned the --omit-empty and --include-empty arguments; exclude or include empty comments (e.g. additional time worked, but no specific comment) from the output. The default is to omit empty comments.

  • The assign command can now be configured (on a per-server basis) to change the status of a bug, using the assign_status option. See README for details.

Bug fixes:

  • Bugzilla URLs are now more rigourously sanity checked.

Other changes:

  • Configuration file syntax changed to ini-like (i.e., parsable by ConfigParser). JSON configuration is no longer supported.

bugzillatools-0.3 :: Sun Aug 7 2011

New features:

  • Added the Bazaar plugin.

  • new command: file a new bug, prompting user for bug data.

  • status learned the --dupe-of argument; this is all that’s needed to mark a bug as a duplicate of another (Bugzilla with automatically set the status and resolution fields to appropriate values).

Bug fixes:

  • status only prompts for resolution if new status is closed and current status is open (--resolution may still be specified, however.)

  • The unused --choose-status and --choose-resolution arguments were removed from status.

  • Fix the index-field width when displaying choose-from lists (was too wide when the number of items displayed was a power of 10)

  • Convert EOFError (^D) into bzlib.ui.RejectWarning when prompting user for input.

  • Don’t bother prompting the user to choose an item from a list that contains only one item.

bugzillatools-0.2.1 :: Tue Jul 12 2011

Bug fixes:

  • Support Unicode data in all commands.

  • Do not show ‘aliases’ heading in --help output if none defined.

  • Add global arguments to subcommand --help output.

bugzillatools-0.2 :: Sat Jul 2 2011

New features:

  • comment now lists bug comments when no comment is given. --forward, --reverse and --limit=N can be used to control output.

  • depend and block commands: show or update bug dependency relationships.

  • cc command: Show or update CC List.

  • fields command: List valid values for bug fields.

  • help command: Show help for a command, or the top-level help if no argument is given.

  • --version prints bugzillatools version.

  • Invoke EDITOR for comment input when comment required but not explicitly provided

  • User matching: For commands that require usernames, instead of providing full username, if a provided fragment matches a single user that user will be used.

  • Command aliases: users can define their own aliases for commands and command arguments.

  • Replace close, fix, reopen and resolve commands with the single status command; commands to suit a particular workflow can be defined as aliases of status, with appropriate arguments.

Bug fixes:

  • Improved server misconfiguration or missing configuration handling.

  • List commands in alphabetical order.

Other changes:

  • The default user configuration file changed to ~/.bugzillarc (formerly ~/.bugrc).

bugzillatools-0.1.2 :: Fri Jun 17 2011

Bug fixes:

  • Fix Bugzilla construction args

bugzillatools-0.1.1 :: Tue Jun 14 2011

New features:

  • products command: list products of a Bugzilla.

  • Describe subcommands in --help output.

Bug fixes:

  • Handle server lookup failure when no servers are defined.

bugzillatools-0.1 :: Sun Jun 12 2011

New features:

  • First release of bugzillatools

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bugzillatools-0.5.2.tar.gz (39.9 kB view details)

Uploaded Source

File details

Details for the file bugzillatools-0.5.2.tar.gz.

File metadata

File hashes

Hashes for bugzillatools-0.5.2.tar.gz
Algorithm Hash digest
SHA256 bfce4ccac856b73ee658517b304ff228084da4457094a1de274cdf0e814c2fda
MD5 ee263ba1ffda7697312c013553d30fa0
BLAKE2b-256 fb4bb26417e0481a4b7d57e274a057b4f093f3912480efe4672f81ec1a466a0f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page