Send notifications for events

Registered by Julien Danjou

Currently Heat never send any notification when doing actions. It would be great to add this so Ceilometer can receive notifications, and can audit and meter stacks.

Blueprint information

Status:
Complete
Approver:
Angus Salkeld
Priority:
Medium
Drafter:
Julien Danjou
Direction:
Approved
Assignee:
Angus Salkeld
Definition:
Approved
Series goal:
Accepted for icehouse
Implementation:
Implemented
Milestone target:
milestone icon 2014.1
Started by
Angus Salkeld
Completed by
Steve Baker

Related branches

Sprints

Whiteboard

https://wiki.openstack.org/wiki/SystemUsageData

Going by the above wiki page it looks like we need the following:

orchestration.stack.{create,delete,update,suspend,resume}.{begin,end}

The details:

tenant_id: Tenant ID that owns the this instance (string)
user_id: User ID that owns this instance (string)
stack_id: Heat stack ID (string)
stack_name: User selected display name for the stack.
created_at: Timestamp for when this stack's record was created in Heat (string, formatted "YYYY-MM-DD hh:mm:ss.ssssss")
state: Current state of stack. (string, such as 'active' or 'deleted')
outputs: list of outputs from the template (string)
parameters: list of user provided parameters (string)

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

Addressed by: https://review.openstack.org/53239
    Send usage notifications on major stack events

(scroiset) proposition for autoscaling notifications https://etherpad.openstack.org/p/heat-notifications

Addressed by: https://review.openstack.org/54661
    WIP: Add autoscaling notifications

(stevebaker) It looks like this won't make icehouse-1

Addressed by: https://review.openstack.org/62086
    Add oslo mock fixture

Addressed by: https://review.openstack.org/62087
    Add autoscaling notifications

Addressed by: https://review.openstack.org/71938
    Retrieve user_id from HTTP Headers to populate Context

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.