trove taskmanager send prepare before DNS attempt

Registered by Erik Redding

Currently, when DNS is required and we build a dbaas container, the final steps in trove taskmanager are to set up dns entry and then send guest prepare call over amqp to install mysql and then poll for the status of the instance. The guest process also reports status periodically and detects if mysql is running.

My proposal is that we don't rely on a successful DNS entry in order to build the container completely and reorder the operations so that trove taskmanager sends the guest prepare call and then try to add DNS. Should DNS fail, trove-taskmanager will still mark the container in error state. To support resolution of this error state, a new mgmt api call be added /instance/<id>/retry_dns to retry DNS entries. (blueprint pending)

Blueprint information

Status:
Complete
Approver:
None
Priority:
Low
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Approved
Series goal:
Accepted for grizzly
Implementation:
Implemented
Milestone target:
None
Started by
Michael Basnight
Completed by
Michael Basnight

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/trove-taskmanager-send-prepare-before-dns,n,z

Addressed by: https://review.openstack.org/48188
    Moved create_instance DNS attempt to post-prepare

[DenisM] Please do full workflow and unit tests!!

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.