Added support for vCloud 5.5 (from philip.kers...@stfc.ac.uk)
Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/724a91a8 Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/724a91a8 Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/724a91a8 Branch: refs/heads/trunk Commit: 724a91a86a6a5175957d5d53a596ea2d97377d9d Parents: ab6a750 Author: Juan Font Alonso <juanfontalo...@gmail.com> Authored: Thu Dec 10 10:36:53 2015 +0100 Committer: anthony-shaw <anthony.p.s...@gmail.com> Committed: Mon Feb 15 09:44:49 2016 +1100 ---------------------------------------------------------------------- libcloud/compute/drivers/vcloud.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/libcloud/blob/724a91a8/libcloud/compute/drivers/vcloud.py ---------------------------------------------------------------------- diff --git a/libcloud/compute/drivers/vcloud.py b/libcloud/compute/drivers/vcloud.py index 0d0f208..499846b 100644 --- a/libcloud/compute/drivers/vcloud.py +++ b/libcloud/compute/drivers/vcloud.py @@ -387,6 +387,8 @@ class VCloudNodeDriver(NodeDriver): cls = VCloud_1_5_NodeDriver elif api_version == '5.1': cls = VCloud_5_1_NodeDriver + elif api_version == '5.5': + cls = VCloud_5_5_NodeDriver else: raise NotImplementedError( "No VCloudNodeDriver found for API version %s" % @@ -864,6 +866,13 @@ class VCloud_1_5_Connection(VCloudConnection): return headers +class VCloud_5_5_Connection(VCloud_1_5_Connection): + def add_default_headers(self, headers): + headers['Accept'] = 'application/*+xml;version=5.5' + headers['x-vcloud-authorization'] = self.token + return headers + + class Instantiate_1_5_VAppXML(object): def __init__(self, name, template, network, vm_network=None, @@ -2086,3 +2095,10 @@ class VCloud_5_1_NodeDriver(VCloud_1_5_NodeDriver): # MB raise ValueError( '%s is not a valid vApp VM memory value' % (vm_memory)) + + +class VCloud_5_5_NodeDriver(VCloud_5_1_NodeDriver): + '''Use 5.5 Connection class to explicitly set 5.5 for the version in + Accept headers + ''' + connectionCls = VCloud_5_5_Connection