We can make quota-class working better

Registered by Dongsheng Yang

quota-class is a template for quota and we can create a quota-class for each type of tenant such as vip.

Modification:
(1). openstack-cinder:
      implement quota-class related APIs.

(2) python-cinderclient:
    Implement some generic quota-class related operations for it.
    a). cinder quota-class-create --name NAME --volumes xxx ...
    b). cinder quota-class-show ID/NAME
    c). cinder quota-class-update ID/NAME --volumes xxx...
    d). cinder quota-class-delete ID/NAME
    e). cinder quota-class-list
    f). cinder qutoa-class-assign PID QCID

(3) python-openstackclient & keystone.
    introduce an option of --volume-quota-class in 'opentack project create' command
    to specify the default quota class of a tenant.

USE CASE:
    (1). create a quota-class for a vip type of tenants.
        # cinder quota-class-create --name vip --volumes 100
    (2). list the quota-classes.
        # cinder quota-class-list
    (3). create a tenant for a 'vip' with the vip quota-class as the default quota-class.
        # openstack project create v01 --volume-quota-class vip
    (4). show the default quota-class of v01
        # cinder quota-defaults v01
    (5). show the quota detail of v01
        # cinder quota-show v01

Blueprint information

Status:
Not started
Approver:
Sean McGinnis
Priority:
Low
Drafter:
Dongsheng Yang
Direction:
Needs approval
Assignee:
None
Definition:
Discussion
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

I think this will require a spec. Please write one up and we can capture discussion items there.

Quota class is a carry over from the split from Nova that was never fully realized, and I'm not sure how it best fits in now with nested quotas, etc.

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

Addressed by: https://review.openstack.org/322413
    Make quota-class working better

Addressed by: https://review.openstack.org/355430
    Make quota-class working better

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.