Make resource properties schemata available in ReST API

Registered by Zane Bitter

Suggestion from stevebake:

It would be useful for clients (especially ui builders) to get the schema properties for each resource type.

Not sure if they are best returned in this [/resource_types] call or in /resource_types/{type name}

Blueprint information

Status:
Complete
Approver:
Steve Baker
Priority:
High
Drafter:
None
Direction:
Approved
Assignee:
Zane Bitter
Definition:
Approved
Series goal:
Accepted for havana
Implementation:
Implemented
Milestone target:
milestone icon 2013.2
Started by
Zane Bitter
Completed by
Zane Bitter

Related branches

Whiteboard

Proposed URL scheme:

/v1/{tenant_id}/resources_types/{type_name}

Gerrit topic: https://review.openstack.org/#q,topic:resource-properties-schema,n,z

Addressed by: https://review.openstack.org/41160
    Define a Schema format for properties

Addressed by: https://review.openstack.org/41161
    Tidy up RPC API definitions

Addressed by: https://review.openstack.org/41162
    RPC Client: Add missing unit tests

Addressed by: https://review.openstack.org/41163
    RPC: Add an RPC call to get a resource type schema

Addressed by: https://review.openstack.org/41164
    ReST API: Add an API for retrieving resource schemata

Addressed by: https://review.openstack.org/41165
    Add constraint checking to Property schema

Addressed by: https://review.openstack.org/41166
    Remove unneccessary Property constraints from unit tests

Addressed by: https://review.openstack.org/41167
    Move property constraints validation to Schema

Addressed by: https://review.openstack.org/42703
    Generate property Schema objects directly from parameters

Addressed by: https://review.openstack.org/42702
    Use Template to instantiate TemplateResource

Addressed by: https://review.openstack.org/42704
    Remove the Property.schema_from_param() method

Addressed by: https://review.openstack.org/42705
    Allow a Provider with a known facade its own schema

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.