Versioned notification api (partial)

Registered by Balazs Gibizer

Versioned notification API

Notification interface of nova is not well defined and the current
notifications define a very inconsistent interface. There is no easy
way to see from the notification consumer point of view what is the format
and the content of the notification nova sends.

Nova developers can add new notifications to the system without specifying
the format and the content of the notification.

Moreover developers can change existing notifications without considering
backward compatibility towards the notification consumers.

Due to this situation maintaining a consumer for nova notifications is really
hard.

Blueprint information

Status:
Complete
Approver:
John Garbutt
Priority:
Medium
Drafter:
Balazs Gibizer
Direction:
Approved
Assignee:
Balazs Gibizer
Definition:
Approved
Series goal:
Accepted for mitaka
Implementation:
Implemented
Milestone target:
milestone icon mitaka-3
Started by
Balazs Gibizer
Completed by
John Garbutt

Related branches

Sprints

Whiteboard

Spec: https://review.openstack.org/#/c/224755/

Gerrit topic: https://review.openstack.org/#q,topic:bp/versioned-notification-api,n,z

Addressed by: https://review.openstack.org/224755
    Versioned notification API

Addressed by: https://review.openstack.org/229881
    [WIP] Add versioned notifications for keypair API

Gerrit topic: https://review.openstack.org/#q,topic:bp/service-status-notification,n,z

Addressed by: https://review.openstack.org/245678
    Add service status notification

Addressed by: https://review.openstack.org/247024
    Add infra for versioned notifications

Addressed by: https://review.openstack.org/247564
    Make emitting versioned notifications configurable

Addressed by: https://review.openstack.org/248167
    Adds json sample for the versioned notifications

Gerrit topic: https://review.openstack.org/#q,topic:versioned-notification-api,n,z

Addressed by: https://review.openstack.org/263788
    doc: add devref about versioned notifications

Addressed by: https://review.openstack.org/263915
    Use extra_data_func to get fingerprints of objects

Addressed by: https://review.openstack.org/265151
    Generate doc for versioned notifications

Addressed by: https://review.openstack.org/273506
    doc:Ask reviews to reject new legacy notifications

Addressed by: https://review.openstack.org/276363
    Forbid new legacy notification event_type

Addressed by: https://review.openstack.org/276759
    DNM: try to wrap mock.patch and mock.patch.object

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.