Bicho

Introduction

Library to access bugzilla and command line tool.

Its main goal is to be clean and provide a command line tool that exposes its features.

Features

Main use case is report generation, therefore only the following features are implemented right now:

Plugins can be written to deal with specific bugzilla installations.

Example (API)

Client API

require 'bicho'

server = Bicho::Client.new('http://bugzilla.gnome.org')
server.get(127043).each do |bug|
  puts bug.summary
  puts bug.url
end

You can give more than one bug or a named query, or both:

server.get(127043, 432423) => [....]
server.get("Named list") => [....]
server.get("Named list", 4423443) => [....]

ActiveRecord-like API

To use the ActiveRecord like interface over the Bug class, you need first to set the Bicho common client:

require 'bicho'

Bicho.client = Bicho::Client.new('https://bugzilla.gnome.org')

Bicho::Bug.where(:product => "vala", :status => "resolved").each do |bug|
  # .. do something with bug
end

Or alternatively:

Bicho::Bug.where.product("vala").status("resolved").each do |bug|
  # .. do something with bug
end

Example (CLI)

bicho -b http://bugzilla.gnome.org show 127043

bicho -b https://bugzilla.gnome.org search --summary "crash"

bicho -b https://bugzilla.gnome.org search --help

Extending Bicho

Commands

See the Command class to implement more commands.

Known issues

www.bugzilla.org/docs/tip/en/html/api/Bugzilla/WebService/Bug.html, I intend to make those real attributes.

Roadmap

Authors

License

Copyright © 2011 SUSE LINUX Products GmbH.

Bicho is licensed under the MIT license. See MIT-LICENSE for details.