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 2011/11/12 01:20:49 UTC
svn commit: r1201117 - in /libcloud/trunk: CHANGES libcloud/compute/base.py
libcloud/compute/drivers/ibm_sbc.py test/compute/test_ibm_sbc.py
Author: tomaz
Date: Sat Nov 12 00:20:48 2011
New Revision: 1201117
URL: http://svn.apache.org/viewvc?rev=1201117&view=rev
Log:
Make sure public_ips and private_ips attributes are always a list. Also fix an
inconsistency in IBM SBC driver and make sure those two attributes are a list.
Modified:
libcloud/trunk/CHANGES
libcloud/trunk/libcloud/compute/base.py
libcloud/trunk/libcloud/compute/drivers/ibm_sbc.py
libcloud/trunk/test/compute/test_ibm_sbc.py
Modified: libcloud/trunk/CHANGES
URL: http://svn.apache.org/viewvc/libcloud/trunk/CHANGES?rev=1201117&r1=1201116&r2=1201117&view=diff
==============================================================================
--- libcloud/trunk/CHANGES (original)
+++ libcloud/trunk/CHANGES Sat Nov 12 00:20:48 2011
@@ -23,6 +23,10 @@ Changes with Apache Libcloud in developm
private_ip attributes, but this will be removed in the next release.
[Tomaz Muraus]
+ - Fix an inconsistency in IBM SBC driver and make sure public_ips and
+ private_ips attributes are a list.
+ [Tomaz Muraus]
+
*) Storage:
- Update Amazon S3 driver to support a new region - US West 2 (Oregon)
Modified: libcloud/trunk/libcloud/compute/base.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/libcloud/compute/base.py?rev=1201117&r1=1201116&r2=1201117&view=diff
==============================================================================
--- libcloud/trunk/libcloud/compute/base.py (original)
+++ libcloud/trunk/libcloud/compute/base.py Sat Nov 12 00:20:48 2011
@@ -114,8 +114,8 @@ class Node(object):
self.id = str(id) if id else None
self.name = name
self.state = state
- self.public_ips = public_ips
- self.private_ips = private_ips
+ self.public_ips = public_ips if public_ips else []
+ self.private_ips = private_ips if private_ips else []
self.driver = driver
self.uuid = self.get_uuid()
self.size = size
Modified: libcloud/trunk/libcloud/compute/drivers/ibm_sbc.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/libcloud/compute/drivers/ibm_sbc.py?rev=1201117&r1=1201116&r2=1201117&view=diff
==============================================================================
--- libcloud/trunk/libcloud/compute/drivers/ibm_sbc.py (original)
+++ libcloud/trunk/libcloud/compute/drivers/ibm_sbc.py Sat Nov 12 00:20:48 2011
@@ -139,7 +139,7 @@ class IBMNodeDriver(NodeDriver):
def list_images(self, location = None):
return self._to_images(self.connection.request(REST_BASE + '/offerings/image').object)
- def list_sizes(self, location = None):
+ def list_sizes(self, location = None):
return [ NodeSize('BRZ32.1/2048/60*175', 'Bronze 32 bit', None, None, None, None, self.connection.driver),
NodeSize('BRZ64.2/4096/60*500*350', 'Bronze 64 bit', None, None, None, None, self.connection.driver),
NodeSize('COP32.1/2048/60', 'Copper 32 bit', None, None, None, None, self.connection.driver),
@@ -157,11 +157,17 @@ class IBMNodeDriver(NodeDriver):
return [ self._to_node(instance) for instance in object.findall('Instance') ]
def _to_node(self, instance):
+ public_ips = []
+
+ ip = instance.findtext('IP')
+ if ip:
+ public_ips.append(ip)
+
return Node(id = instance.findtext('ID'),
name = instance.findtext('Name'),
state = self.NODE_STATE_MAP[int(instance.findtext('Status'))],
- public_ips = instance.findtext('IP'),
- private_ips = None,
+ public_ips = public_ips,
+ private_ips = [],
driver = self.connection.driver)
def _to_images(self, object):
Modified: libcloud/trunk/test/compute/test_ibm_sbc.py
URL: http://svn.apache.org/viewvc/libcloud/trunk/test/compute/test_ibm_sbc.py?rev=1201117&r1=1201116&r2=1201117&view=diff
==============================================================================
--- libcloud/trunk/test/compute/test_ibm_sbc.py (original)
+++ libcloud/trunk/test/compute/test_ibm_sbc.py Sat Nov 12 00:20:48 2011
@@ -50,10 +50,10 @@ class IBMTests(unittest.TestCase, TestCa
self.assertEquals(len(ret), 3)
self.assertEquals(ret[0].id, '26557')
self.assertEquals(ret[0].name, 'Insight Instance')
- self.assertEquals(ret[0].public_ips, '129.33.196.128')
- self.assertEquals(ret[0].private_ips, None) # Private IPs not supported
- self.assertEquals(ret[1].public_ips, None) # Node is non-active (no IP)
- self.assertEquals(ret[1].private_ips, None)
+ self.assertEquals(ret[0].public_ips, ['129.33.196.128'])
+ self.assertEquals(ret[0].private_ips, []) # Private IPs not supported
+ self.assertEquals(ret[1].public_ips, []) # Node is non-active (no IP)
+ self.assertEquals(ret[1].private_ips, [])
self.assertEquals(ret[1].id, '28193')
def test_list_sizes(self):