5.7.181. Bugzilla::Extension::Push

5.7.181.1. Name

Bugzilla::Extension::Push - Message Bus support for Bugzilla

5.7.181.2. Version

Version 1

5.7.181.3. Description

This module will allow you to configure your Bugzilla server to send message on several message buses.

The messages will only contain data an unprivileged user can see.

5.7.181.4. Configuration and Environment

This extension supports multiple connectors, only one of each connector type can be active at a time.

Each connector has it’s own configuration requirements.

Connectors

File

This connector will write messages to a file on ./data/ on the server, the defaul fil is ./data/push.log

STOMPL_SSL

Bugzilla will connect to a broker using STOMP over SSL.

An SSL Certificate and a Keyfile are required to establish the connection.

5.7.181.5. Messages

Each message can contain 2 items, and event and the change set, the change set index will be the name of the object changed. e.g. “bug” if a bug is created or it’s attributes changed, or “comment” if a comment is added or edited.

Event Format

The event object contains the basic information about the change.

The fields are:

  • routing_key
Takes the form $object_type + ‘.’ + $action where the object type can be bug, comment, or attachment, and the action can be create, modify, or update.
  • target
The object_type targeted by the event: bug, comment, or attachment.
  • bug_id
The ID of the bug affected.
  • change_set
The unique ID of the change.
  • time
The time of the change, without time zone.
  • action
The action of the event: crete, modify, or update.
  • user
The user who made the change.

Example for a comment creation event

{
  "event" : {
     "routing_key" : "comment.create",
     "target" : "comment",
     "bug_id" : 1386104,
     "change_set" : "3624.1480914009.90748",
     "time" : "2016-12-04T19:00:38",
     "action" : "create",
     "user" : {
        "real_name" : "Jeff Fearn",
        "login" : "jfearn@redhat.com",
        "id" : 193645
     }
  }
}

Public Messages

Public messages contain an “event” key and object key.

Example for a comment creation event

 {
   "event" : {
      "routing_key" : "comment.create",
      "target" : "comment",
      "bug_id" : 1386104,
      "action" : "create",
      "time" : "2016-12-04T18:49:51",
      "user" : {
         "real_name" : "Jeff Fearn",
         "id" : 193645,
         "login" : "jfearn@redhat.com"
      },
      "change_set" : "3550.1480913363.34313"
   },
   "comment" : {
      "id" : 1386104,
      "body" : "testing a public comment",
      "creation_time" : "2016-12-04T18:50:38",
      "number" : 2,
      "is_private" : false,
      "bug" : {
         "product" : {
            "id" : 35,
            "name" : "Bugzilla"
         },
         "alias" : [],
         "severity" : "medium",
         "reporter" : {
            "login" : "qgong@redhat.com",
            "id" : 331384,
            "real_name" : "Rony Gong"
         },
         "url" : "",
         "component" : {
            "id" : 1169,
            "name" : "Bugzilla General"
         },
         "operating_system" : "Unspecified",
         "is_private" : false,
         "version" : {
            "name" : "5.0",
            "id" : 3956
         },
         "flags" : [
         ],
         "summary" : "The quick search function in the documentation page doesn't work",
         "last_change_time" : "2016-10-18T20:51:16",
         "assigned_to" : {
            "id" : 193645,
            "login" : "jfearn@redhat.com",
            "real_name" : "Jeff Fearn"
         },
         "id" : 1386104,
         "keywords" : [],
         "status" : {
            "id" : 8,
            "name" : "MODIFIED"
         },
         "whiteboard" : "",
         "target_milestone" : null,
         "platform" : "Unspecified",
         "priority" : "unspecified",
         "resolution" : "",
         "qa_contact" : {
            "real_name" : "tools-bugs",
            "id" : 309088,
            "login" : "tools-bugs@redhat.com"
         },
         "classification" : "Community",
         "creation_time" : "2016-10-17T21:40:06"
      }
   }
}

Private Messages

Private messages only contain the event.

Example for a private comment creation event

{
  "event" : {
     "routing_key" : "comment.create",
     "target" : "comment",
     "bug_id" : 1386104,
     "change_set" : "3624.1480914009.90748",
     "time" : "2016-12-04T19:00:38",
     "action" : "create",
     "user" : {
        "real_name" : "Jeff Fearn",
        "login" : "jfearn@redhat.com",
        "id" : 193645
     }
  }
}

5.7.181.6. Author

Red Hat patches by Jeff Fearn <jfearn@redhat.com>


This documentation undoubtedly has bugs; if you find some, please file them here.