Pull common functionality into driver superclass, including data transformation

Registered by Alexander Yip

Currently, each datasource driver contains code to convert data from the API call response to the Congress data tables. Some of these API responses (like in neutron list networks) contain nested data, for example in the list of networks, each network can contain a sub-list of subnets. The driver populates a separate table for subnets and the creates a key to link between the network table and the subnet table. This spec describes how to generalize the data conversion, including linking between two tables.

Blueprint information

Status:
Complete
Approver:
Tim Hinrichs
Priority:
Medium
Drafter:
Alexander Yip
Direction:
Approved
Assignee:
Alexander Yip
Definition:
Approved
Series goal:
Accepted for kilo
Implementation:
Implemented
Milestone target:
None
Started by
Tim Hinrichs
Completed by
Tim Hinrichs

Related branches

Sprints

Whiteboard

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

Addressed by: https://review.openstack.org/#/c/125845
    Use declarative description to drive datasource data conversion

Addressed by: https://review.openstack.org/122271
    Add a Congress driver for Keystone

Addressed by: https://review.openstack.org/#/c/127623/
    Convert Nova driver to use new datasource_driver

Addressed by: https://review.openstack.org/#/c/127624/
    Convert Neutron driver to use new datasource_driver

Addressed by: https://review.openstack.org/#/c/133888/
    Allow a subtranslator to use a field from the parent table as an id

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.