Signaling and Coordination

Registered by Jeff Sloyer

Overview

Provide an API or signaling mechanism that will allow resources(instances) to share information between themselves (ex. usernames, passwords). The goal is to have a simple, declarative way of expressing dependencies in HOT templates (as opposed to having explicit WaitCondition/WaitHandle pairs as in current cfn templates) and have the Heat engine do respective orchestration at runtime.
For example, by simply defining a depends_on relation in a HOT template, appropriate signaling should be performed at runtime so that a component A that depends on another component B is processed after component B has been configured.

What is missing/what are we trying to solve:
Currently in Heat there is a gap in configuring complex and larger software systems. For example sharing a username, password, or database dynamically at deploy time does not exist in Heat right now. It is possible to accomplish this with cfn signaling but it is messy and complex. We wish to simply this.

Blueprint information

Status:
Complete
Approver:
Steven Hardy
Priority:
Undefined
Drafter:
Jeff Sloyer
Direction:
Needs approval
Assignee:
JunJie Nan
Definition:
Superseded
Series goal:
Accepted for future
Implementation:
Started
Milestone target:
None
Started by
JunJie Nan
Completed by
Thomas Herve

Related branches

Sprints

Whiteboard

https://etherpad.openstack.org/signaling-coordination

(shardy) Is this BP really describing a resource implementation for Marconi?

https://wiki.openstack.org/wiki/Marconi

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.