Enable Client plugin to use given service api version

Registered by Kanagaraj Manickam

OpenStack services (and its python clients) exposes the features as below:
1. some features across versions, Like 'create image' in glace is supported in v1, v2
2. some features only in given version. Like 'image tag' in glance is supported only in v2. similarly 'domain' in designate is supported only in v1, and 'zone' is supported only in v2.

And Client plugin framework in heat, does support to use only one version of the service api, which is always hard-coded. So when we want to support features which are not exposed in hard-coded version, it became an limitation. This is can be overcome by removing the hard-coding of the version as below:
1. Set the hard-coded version as default version to be used, which helps all existing resource plugins
without breaking.
2. Update the client plugin framework to create the client based on the given version. so while resource plugin for a given service feature is implemented, it can pass the required version to client plugin, which can create service client appropriately.

This feature is already implemented at the patch https://review.openstack.org/255443

(Most of the time, OpenStack services supports multiple versions while their endpoint does not
include the version string in it. )

Blueprint information

Status:
Complete
Approver:
None
Priority:
Medium
Drafter:
Kanagaraj Manickam
Direction:
Approved
Assignee:
Kanagaraj Manickam
Definition:
Approved
Series goal:
Accepted for newton
Implementation:
Implemented
Milestone target:
milestone icon newton-1
Started by
Kanagaraj Manickam
Completed by
Kanagaraj Manickam

Related branches

Sprints

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.