You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by to...@apache.org on 2012/04/13 04:04:49 UTC
svn commit: r1325588 - in /libcloud/trunk: ./ libcloud/compute/ test/
test/compute/ test/compute/fixtures/vcl/
Author: tomaz
Date: Fri Apr 13 02:04:48 2012
New Revision: 1325588
URL: http://svn.apache.org/viewvc?rev=1325588&view=rev
Log:
Add VCL cloud compute driver -
http://www.educause.edu/blog/hes8/CloudComputingandtheVirtualCom/167931. This
patch has been contributed by Jason Gionta and is part of LIBCLOUD-180.
Added:
libcloud/trunk/test/compute/fixtures/vcl/
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCaddRequest.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCendRequest.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCextendRequest.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetImages.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestConnectData.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestIds.xml
libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestStatus.xml
libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Account_getVirtualGuests.xml
libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Location_Datacenter_getDatacenters.xml
libcloud/trunk/test/compute/test_vcl.py
Modified:
libcloud/trunk/CHANGES
libcloud/trunk/libcloud/compute/providers.py
libcloud/trunk/libcloud/compute/types.py
libcloud/trunk/test/secrets.py-dist
Modified: libcloud/trunk/CHANGES
URL: http://svn.apache.org/viewvc/libcloud/trunk/CHANGES?rev=1325588&r1=1325587&r2=1325588&view=diff
==============================================================================
--- libcloud/trunk/CHANGES (original)
+++ libcloud/trunk/CHANGES Fri Apr 13 02:04:48 2012
@@ -25,9 +25,13 @@ Changes with Apache Libcloud in developm
[Tomaz Muraus]
- Store auth token expire times on the connection class in the attribute
- called 'auth_token_expires'.
+ called 'auth_token_expires'. ; LIBCLOUD-178
[Chris Gilmer, Brad Morgan]
+ - Add new driver for VCL cloud
+ (http://www.educause.edu/blog/hes8/CloudComputingandtheVirtualCom/167931)
+ [Jason Gionta, Tomaz Muraus]
+
*) Storage
- Large object upload support for CloudFiles driver
Modified: libcloud/trunk/libcloud/compute/providers.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/libcloud/compute/providers.py?rev=1325588&r1=1325587&r2=1325588&view=diff
==============================================================================
--- libcloud/trunk/libcloud/compute/providers.py (original)
+++ libcloud/trunk/libcloud/compute/providers.py Fri Apr 13 02:04:48 2012
@@ -112,7 +112,9 @@ DRIVERS = {
Provider.LIBVIRT:
('libcloud.compute.drivers.libvirt_driver', 'LibvirtNodeDriver'),
Provider.JOYENT:
- ('libcloud.compute.drivers.joyent', 'JoyentNodeDriver')
+ ('libcloud.compute.drivers.joyent', 'JoyentNodeDriver'),
+ Provider.VCL:
+ ('libcloud.compute.drivers.vcl', 'VCLNodeDriver')
}
Modified: libcloud/trunk/libcloud/compute/types.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/libcloud/compute/types.py?rev=1325588&r1=1325587&r2=1325588&view=diff
==============================================================================
--- libcloud/trunk/libcloud/compute/types.py (original)
+++ libcloud/trunk/libcloud/compute/types.py Fri Apr 13 02:04:48 2012
@@ -64,6 +64,7 @@ class Provider(object):
@cvar RACKSPACE_NOVA_BETA: Rackspace Nova Private Beta (ORD)
@cvar LIBVIRT: Libvirt driver
@cvar JOYENT: Joyent driver
+ @cvar VCL: VCL driver
"""
DUMMY = 0
EC2 = 1 # deprecated name
@@ -113,6 +114,7 @@ class Provider(object):
ELASTICHOSTS_US2 = 43
ELASTICHOSTS_CA1 = 44
JOYENT = 45
+ VCL = 46
class NodeState(object):
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCaddRequest.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCaddRequest.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCaddRequest.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCaddRequest.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>requestid</name>
+ <value>
+ <string>51</string>
+ </value>
+ </member>
+ <member>
+ <name>status</name>
+ <value>
+ <string>success</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCendRequest.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCendRequest.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCendRequest.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCendRequest.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>status</name>
+ <value>
+ <string>success</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCextendRequest.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCextendRequest.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCextendRequest.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCextendRequest.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>status</name>
+ <value>
+ <string>success</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetImages.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetImages.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetImages.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetImages.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>8</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>CentOS 5 (EC2)</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>5</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>CentOS 5.4 Base (32 bit VM)</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>6</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>WinXP Base (32 bit VM)</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestConnectData.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestConnectData.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestConnectData.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestConnectData.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>status</name>
+ <value>
+ <string>ready</string>
+ </value>
+ </member>
+ <member>
+ <name>serverIP</name>
+ <value>
+ <string>152.46.20.67</string>
+ </value>
+ </member>
+ <member>
+ <name>user</name>
+ <value>
+ <string>admin</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>ehkNGW</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestIds.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestIds.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestIds.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestIds.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>status</name>
+ <value>
+ <string>success</string>
+ </value>
+ </member>
+ <member>
+ <name>requests</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>requestid</name>
+ <value>
+ <string>51</string>
+ </value>
+ </member>
+ <member>
+ <name>imageid</name>
+ <value>
+ <string>5</string>
+ </value>
+ </member>
+ <member>
+ <name>imagename</name>
+ <value>
+ <string>CentOS 5.4 Base (32 bit VM)</string>
+ </value>
+ </member>
+ <member>
+ <name>start</name>
+ <value>
+ <int>1334150100</int>
+ </value>
+ </member>
+ <member>
+ <name>end</name>
+ <value>
+ <int>1334168100</int>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestStatus.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestStatus.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestStatus.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/XMLRPCgetRequestStatus.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<methodResponse>
+<params>
+ <param>
+ <value>
+ <struct>
+ <member>
+ <name>status</name>
+ <value>
+ <string>ready</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </param>
+</params>
+</methodResponse>
Added: libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Account_getVirtualGuests.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Account_getVirtualGuests.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Account_getVirtualGuests.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Account_getVirtualGuests.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,1066 @@
+<?xml version="1.0" encoding="utf-8"?>
+<params>
+<param>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>privateNetworkOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>id</name>
+ <value>
+ <int>1832</int>
+ </value>
+ </member>
+ <member>
+ <name>accountId</name>
+ <value>
+ <int>11111</int>
+ </value>
+ </member>
+ <member>
+ <name>statusId</name>
+ <value>
+ <int>1001</int>
+ </value>
+ </member>
+ <member>
+ <name>uuid</name>
+ <value>
+ <string>eaa9aaa2-8e2e-d6e0-ce11-6f01e765779c</string>
+ </value>
+ </member>
+ <member>
+ <name>hostname</name>
+ <value>
+ <string>test1</string>
+ </value>
+ </member>
+ <member>
+ <name>domain</name>
+ <value>
+ <string>libcloud.org</string>
+ </value>
+ </member>
+ <member>
+ <name>maxCpu</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>maxCpuUnits</name>
+ <value>
+ <string>CORE</string>
+ </value>
+ </member>
+ <member>
+ <name>maxMemory</name>
+ <value>
+ <int>2048</int>
+ </value>
+ </member>
+ <member>
+ <name>startCpus</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2009-09-04T14:49:45-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T13:08:47-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>metricPollDate</name>
+ <value>
+ <string>2010-04-22T13:08:00-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>dedicatedAccountHostOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>powerState</name>
+ <value>
+ <struct>
+ <member>
+ <name>name</name>
+ <value>
+ <string>Running</string>
+ </value>
+ </member>
+ <member>
+ <name>keyName</name>
+ <value>
+ <string>RUNNING</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </member>
+ <member>
+ <name>softwareComponents</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>191115</int>
+ </value>
+ </member>
+ <member>
+ <name>hardwareId</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>manufacturerLicenseInstance</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>passwords</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>166980</int>
+ </value>
+ </member>
+ <member>
+ <name>softwareId</name>
+ <value>
+ <int>191115</int>
+ </value>
+ </member>
+ <member>
+ <name>username</name>
+ <value>
+ <string>root</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>TEST</string>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2009-09-04T14:49:51-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2009-09-04T14:49:51-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>port</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ <member>
+ <name>primaryIpAddress</name>
+ <value>
+ <string>67.254.254.254</string>
+ </value>
+ </member>
+ <member>
+ <name>primaryBackendIpAddress</name>
+ <value>
+ <string>10.254.254.254</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>privateNetworkOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>id</name>
+ <value>
+ <int>13402</int>
+ </value>
+ </member>
+ <member>
+ <name>accountId</name>
+ <value>
+ <int>11111</int>
+ </value>
+ </member>
+ <member>
+ <name>statusId</name>
+ <value>
+ <int>1001</int>
+ </value>
+ </member>
+ <member>
+ <name>uuid</name>
+ <value>
+ <string>9e9e9e99-4ed9-4645-19f3-55ee4e404d56</string>
+ </value>
+ </member>
+ <member>
+ <name>hostname</name>
+ <value>
+ <string>test2</string>
+ </value>
+ </member>
+ <member>
+ <name>domain</name>
+ <value>
+ <string>libcloud.org</string>
+ </value>
+ </member>
+ <member>
+ <name>maxCpu</name>
+ <value>
+ <int>1</int>
+ </value>
+ </member>
+ <member>
+ <name>maxCpuUnits</name>
+ <value>
+ <string>CORE</string>
+ </value>
+ </member>
+ <member>
+ <name>maxMemory</name>
+ <value>
+ <int>1024</int>
+ </value>
+ </member>
+ <member>
+ <name>startCpus</name>
+ <value>
+ <int>1</int>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-03-23T17:06:13-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T13:08:43-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>metricPollDate</name>
+ <value>
+ <string>2010-04-22T13:08:00-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>dedicatedAccountHostOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>powerState</name>
+ <value>
+ <struct>
+ <member>
+ <name>name</name>
+ <value>
+ <string>Running</string>
+ </value>
+ </member>
+ <member>
+ <name>keyName</name>
+ <value>
+ <string>RUNNING</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </member>
+ <member>
+ <name>softwareComponents</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>257314</int>
+ </value>
+ </member>
+ <member>
+ <name>hardwareId</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>manufacturerLicenseInstance</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>passwords</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>235268</int>
+ </value>
+ </member>
+ <member>
+ <name>softwareId</name>
+ <value>
+ <int>257314</int>
+ </value>
+ </member>
+ <member>
+ <name>username</name>
+ <value>
+ <string>root</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>TEST</string>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-03-23T17:06:17-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-03-23T17:06:17-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>port</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ <member>
+ <name>primaryIpAddress</name>
+ <value>
+ <string>174.254.254.254</string>
+ </value>
+ </member>
+ <member>
+ <name>primaryBackendIpAddress</name>
+ <value>
+ <string>10.254.254.254</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>privateNetworkOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>id</name>
+ <value>
+ <int>19293</int>
+ </value>
+ </member>
+ <member>
+ <name>accountId</name>
+ <value>
+ <int>11111</int>
+ </value>
+ </member>
+ <member>
+ <name>statusId</name>
+ <value>
+ <int>1001</int>
+ </value>
+ </member>
+ <member>
+ <name>uuid</name>
+ <value>
+ <string>9f99e19b-2c61-9cd5-2081-67b57fd7977b</string>
+ </value>
+ </member>
+ <member>
+ <name>hostname</name>
+ <value>
+ <string>test3</string>
+ </value>
+ </member>
+ <member>
+ <name>domain</name>
+ <value>
+ <string>libcloud.org</string>
+ </value>
+ </member>
+ <member>
+ <name>maxCpu</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>maxCpuUnits</name>
+ <value>
+ <string>CORE</string>
+ </value>
+ </member>
+ <member>
+ <name>maxMemory</name>
+ <value>
+ <int>1024</int>
+ </value>
+ </member>
+ <member>
+ <name>startCpus</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:38:53-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T13:08:01-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>metricPollDate</name>
+ <value>
+ <string>2010-04-22T13:08:00-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>dedicatedAccountHostOnlyFlag</name>
+ <value>
+ <boolean>1</boolean>
+ </value>
+ </member>
+ <member>
+ <name>powerState</name>
+ <value>
+ <struct>
+ <member>
+ <name>name</name>
+ <value>
+ <string>Running</string>
+ </value>
+ </member>
+ <member>
+ <name>keyName</name>
+ <value>
+ <string>RUNNING</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </member>
+ <member>
+ <name>softwareComponents</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>277185</int>
+ </value>
+ </member>
+ <member>
+ <name>hardwareId</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>manufacturerLicenseInstance</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>passwords</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>250826</int>
+ </value>
+ </member>
+ <member>
+ <name>softwareId</name>
+ <value>
+ <int>277185</int>
+ </value>
+ </member>
+ <member>
+ <name>username</name>
+ <value>
+ <string>root</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>TEST</string>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:38:57-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T12:38:57-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>port</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ <member>
+ <name>primaryIpAddress</name>
+ <value>
+ <string>174.254.254.254</string>
+ </value>
+ </member>
+ <member>
+ <name>primaryBackendIpAddress</name>
+ <value>
+ <string>10.254.254.254</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>privateNetworkOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>id</name>
+ <value>
+ <int>19288</int>
+ </value>
+ </member>
+ <member>
+ <name>accountId</name>
+ <value>
+ <int>11111</int>
+ </value>
+ </member>
+ <member>
+ <name>statusId</name>
+ <value>
+ <int>1001</int>
+ </value>
+ </member>
+ <member>
+ <name>uuid</name>
+ <value>
+ <string>999f77d9-679b-c47d-136d-04cd302384ec</string>
+ </value>
+ </member>
+ <member>
+ <name>hostname</name>
+ <value>
+ <string>test4</string>
+ </value>
+ </member>
+ <member>
+ <name>domain</name>
+ <value>
+ <string>libcloud.org</string>
+ </value>
+ </member>
+ <member>
+ <name>maxCpu</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>maxCpuUnits</name>
+ <value>
+ <string>CORE</string>
+ </value>
+ </member>
+ <member>
+ <name>maxMemory</name>
+ <value>
+ <int>1024</int>
+ </value>
+ </member>
+ <member>
+ <name>startCpus</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:15:24-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T13:08:31-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>metricPollDate</name>
+ <value>
+ <string>2010-04-22T13:08:00-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>dedicatedAccountHostOnlyFlag</name>
+ <value>
+ <boolean>1</boolean>
+ </value>
+ </member>
+ <member>
+ <name>powerState</name>
+ <value>
+ <struct>
+ <member>
+ <name>name</name>
+ <value>
+ <string>Running</string>
+ </value>
+ </member>
+ <member>
+ <name>keyName</name>
+ <value>
+ <string>RUNNING</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </member>
+ <member>
+ <name>softwareComponents</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>277171</int>
+ </value>
+ </member>
+ <member>
+ <name>hardwareId</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>manufacturerLicenseInstance</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>passwords</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>250815</int>
+ </value>
+ </member>
+ <member>
+ <name>softwareId</name>
+ <value>
+ <int>277171</int>
+ </value>
+ </member>
+ <member>
+ <name>username</name>
+ <value>
+ <string>root</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>TEST</string>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:15:26-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T12:15:26-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>port</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ <member>
+ <name>primaryIpAddress</name>
+ <value>
+ <string>174.254.254.254</string>
+ </value>
+ </member>
+ <member>
+ <name>primaryBackendIpAddress</name>
+ <value>
+ <string>10.254.254.254</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>privateNetworkOnlyFlag</name>
+ <value>
+ <boolean>0</boolean>
+ </value>
+ </member>
+ <member>
+ <name>id</name>
+ <value>
+ <int>19284</int>
+ </value>
+ </member>
+ <member>
+ <name>accountId</name>
+ <value>
+ <int>11111</int>
+ </value>
+ </member>
+ <member>
+ <name>statusId</name>
+ <value>
+ <int>1001</int>
+ </value>
+ </member>
+ <member>
+ <name>uuid</name>
+ <value>
+ <string>f3c73738-7731-1372-f3c3-e6808082f824</string>
+ </value>
+ </member>
+ <member>
+ <name>hostname</name>
+ <value>
+ <string>test5</string>
+ </value>
+ </member>
+ <member>
+ <name>domain</name>
+ <value>
+ <string>libcloud.org</string>
+ </value>
+ </member>
+ <member>
+ <name>maxCpu</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>maxCpuUnits</name>
+ <value>
+ <string>CORE</string>
+ </value>
+ </member>
+ <member>
+ <name>maxMemory</name>
+ <value>
+ <int>1024</int>
+ </value>
+ </member>
+ <member>
+ <name>startCpus</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:11:23-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T13:08:31-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>metricPollDate</name>
+ <value>
+ <string>2010-04-22T13:08:00-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>dedicatedAccountHostOnlyFlag</name>
+ <value>
+ <boolean>1</boolean>
+ </value>
+ </member>
+ <member>
+ <name>powerState</name>
+ <value>
+ <struct>
+ <member>
+ <name>name</name>
+ <value>
+ <string>Running</string>
+ </value>
+ </member>
+ <member>
+ <name>keyName</name>
+ <value>
+ <string>RUNNING</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </member>
+ <member>
+ <name>softwareComponents</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>277167</int>
+ </value>
+ </member>
+ <member>
+ <name>hardwareId</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>manufacturerLicenseInstance</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ <member>
+ <name>passwords</name>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>250811</int>
+ </value>
+ </member>
+ <member>
+ <name>softwareId</name>
+ <value>
+ <int>277167</int>
+ </value>
+ </member>
+ <member>
+ <name>username</name>
+ <value>
+ <string>root</string>
+ </value>
+ </member>
+ <member>
+ <name>password</name>
+ <value>
+ <string>TEST</string>
+ </value>
+ </member>
+ <member>
+ <name>createDate</name>
+ <value>
+ <string>2010-04-22T12:11:27-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>modifyDate</name>
+ <value>
+ <string>2010-04-22T12:11:27-05:00</string>
+ </value>
+ </member>
+ <member>
+ <name>port</name>
+ <value>
+ <string />
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+ </member>
+ <member>
+ <name>primaryIpAddress</name>
+ <value>
+ <string>174.254.254.254</string>
+ </value>
+ </member>
+ <member>
+ <name>primaryBackendIpAddress</name>
+ <value>
+ <string>10.254.254.254</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+</param>
+</params>
Added: libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Location_Datacenter_getDatacenters.xml
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Location_Datacenter_getDatacenters.xml?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Location_Datacenter_getDatacenters.xml (added)
+++ libcloud/trunk/test/compute/fixtures/vcl/v3_SoftLayer_Location_Datacenter_getDatacenters.xml Fri Apr 13 02:04:48 2012
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<params>
+<param>
+ <value>
+ <array>
+ <data>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>2</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>dal00</string>
+ </value>
+ </member>
+ <member>
+ <name>longName</name>
+ <value>
+ <string>Corporate HQ</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>3</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>dal01</string>
+ </value>
+ </member>
+ <member>
+ <name>longName</name>
+ <value>
+ <string>Dallas</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>18171</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>sea01</string>
+ </value>
+ </member>
+ <member>
+ <name>longName</name>
+ <value>
+ <string>Seattle</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ <value>
+ <struct>
+ <member>
+ <name>id</name>
+ <value>
+ <int>37473</int>
+ </value>
+ </member>
+ <member>
+ <name>name</name>
+ <value>
+ <string>wdc01</string>
+ </value>
+ </member>
+ <member>
+ <name>longName</name>
+ <value>
+ <string>Washington, DC</string>
+ </value>
+ </member>
+ </struct>
+ </value>
+ </data>
+ </array>
+ </value>
+</param>
+</params>
Added: libcloud/trunk/test/compute/test_vcl.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/test_vcl.py?rev=1325588&view=auto
==============================================================================
--- libcloud/trunk/test/compute/test_vcl.py (added)
+++ libcloud/trunk/test/compute/test_vcl.py Fri Apr 13 02:04:48 2012
@@ -0,0 +1,149 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import unittest
+import sys
+
+from xml.etree import ElementTree as ET
+
+from libcloud.utils.py3 import httplib
+from libcloud.utils.py3 import xmlrpclib
+from libcloud.utils.py3 import next
+
+from libcloud.compute.drivers.vcl import VCLNodeDriver as VCL
+from libcloud.compute.types import NodeState
+
+from test import MockHttp
+from test.file_fixtures import ComputeFileFixtures
+from test.secrets import VCL_PARAMS
+
+class MockVCLTransport(xmlrpclib.Transport):
+
+ def __init__(self, datetime, user, passwd, host):
+ self._use_datetime = datetime
+ self._connection = (None, None)
+ self._extra_headers = []
+
+ def request(self, host, handler, request_body, verbose=0):
+ self.verbose = 0
+ method = ET.XML(request_body).find('methodName').text
+ mock = VCLMockHttp(host, 80)
+ mock.request('POST', method)
+ resp = mock.getresponse()
+
+ if sys.version[0] == '2' and sys.version[2] == '7':
+ response = self.parse_response(resp)
+ else:
+ response = self.parse_response(resp.body)
+ return response
+
+class VCLTests(unittest.TestCase):
+
+ def setUp(self):
+ VCL.connectionCls.proxyCls.transportCls = MockVCLTransport
+ self.driver = VCL(*VCL_PARAMS)
+
+ def test_list_nodes(self):
+ node = self.driver.list_nodes(ipaddr='192.168.1.1')[0]
+ self.assertEqual(node.name, 'CentOS 5.4 Base (32 bit VM)')
+ self.assertEqual(node.state, NodeState.RUNNING)
+ self.assertEqual(node.extra['pass'], 'ehkNGW')
+
+ def test_list_images(self):
+ images = self.driver.list_images()
+ image = images[0]
+ self.assertEqual(image.id, '8')
+
+ def test_list_sizes(self):
+ sizes = self.driver.list_sizes()
+ self.assertEqual(len(sizes), 1)
+
+ def test_create_node(self):
+ image = self.driver.list_images()[0]
+ node = self.driver.create_node(image=image)
+ self.assertEqual(node.id, '51')
+
+ def test_destroy_node(self):
+ node = self.driver.list_nodes(ipaddr='192.168.1.1')[0]
+ self.assertTrue(self.driver.destroy_node(node))
+
+ def test_ex_update_node_access(self):
+ node = self.driver.list_nodes(ipaddr='192.168.1.1')[0]
+ node = self.driver.ex_update_node_access(node, ipaddr='192.168.1.2')
+ self.assertEqual(node.name, 'CentOS 5.4 Base (32 bit VM)')
+ self.assertEqual(node.state, NodeState.RUNNING)
+ self.assertEqual(node.extra['pass'], 'ehkNGW')
+
+ def test_ex_extend_request_time(self):
+ node = self.driver.list_nodes(ipaddr='192.168.1.1')[0]
+ self.assertTrue(self.driver.ex_extend_request_time(node, 60))
+
+ def test_ex_get_request_end_time(self):
+ node = self.driver.list_nodes(ipaddr='192.168.1.1')[0]
+ self.assertEqual(
+ self.driver.ex_get_request_end_time(node),
+ 1334168100
+ )
+
+class VCLMockHttp(MockHttp):
+ fixtures = ComputeFileFixtures('vcl')
+
+ def XMLRPCgetImages(self, method, url, body, headers):
+ body = self.fixtures.load('XMLRPCgetImages.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCextendRequest(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load('XMLRPCextendRequest.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCgetRequestIds(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load(
+ 'XMLRPCgetRequestIds.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCgetRequestStatus(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load(
+ 'XMLRPCgetRequestStatus.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCendRequest(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load(
+ 'XMLRPCendRequest.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCaddRequest(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load(
+ 'XMLRPCaddRequest.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+ def XMLRPCgetRequestConnectData(
+ self, method, url, body, headers):
+
+ body = self.fixtures.load(
+ 'XMLRPCgetRequestConnectData.xml')
+ return (httplib.OK, body, {}, httplib.responses[httplib.OK])
+
+if __name__ == '__main__':
+ sys.exit(unittest.main())
Modified: libcloud/trunk/test/secrets.py-dist
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/secrets.py-dist?rev=1325588&r1=1325587&r2=1325588&view=diff
==============================================================================
--- libcloud/trunk/test/secrets.py-dist (original)
+++ libcloud/trunk/test/secrets.py-dist Fri Apr 13 02:04:48 2012
@@ -36,6 +36,7 @@ VCLOUD_PARAMS = ('user', 'secret')
VOXEL_PARAMS = ('key', 'secret')
VPSNET_PARAMS = ('user', 'key')
JOYENT_PARAMS = ('user', 'key')
+VCL_PARAMS = ('user', 'pass', True, 'foo.bar.com')
# Storage
STORAGE_S3_PARAMS = ('key', 'secret')