You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@libcloud.apache.org by pq...@apache.org on 2010/04/24 02:32:22 UTC

svn commit: r937564 - /incubator/libcloud/trunk/libcloud/drivers/softlayer.py

Author: pquerna
Date: Sat Apr 24 00:32:22 2010
New Revision: 937564

URL: http://svn.apache.org/viewvc?rev=937564&view=rev
Log:
Improve the ability to not pass a domain in create node.

Modified:
    incubator/libcloud/trunk/libcloud/drivers/softlayer.py

Modified: incubator/libcloud/trunk/libcloud/drivers/softlayer.py
URL: http://svn.apache.org/viewvc/incubator/libcloud/trunk/libcloud/drivers/softlayer.py?rev=937564&r1=937563&r2=937564&view=diff
==============================================================================
--- incubator/libcloud/trunk/libcloud/drivers/softlayer.py (original)
+++ incubator/libcloud/trunk/libcloud/drivers/softlayer.py Sat Apr 24 00:32:22 2010
@@ -224,7 +224,7 @@ class SoftLayerNodeDriver(NodeDriver):
     def _to_node(self, host):
         try:
             password = host['softwareComponents'][0]['passwords'][0]['password']
-        except IndexError, KeyError:
+        except (IndexError, KeyError):
             password = None
 
         return Node(
@@ -303,8 +303,16 @@ class SoftLayerNodeDriver(NodeDriver):
         name = kwargs['name']
         image = kwargs['image']
         size = kwargs['size']
-        domain = kwargs['domain']
+        domain = kwargs.get('domain')
         location = kwargs['location']
+        if domain == None:
+            if name.find(".") != -1:
+                domain = name[name.find('.')+1:]
+
+        if domain == None:
+            # TODO: domain is a required argument for the Sofylayer API, but it
+            # it shouldn't be.
+            domain = "exmaple.com"
 
         res = {'prices': SL_TEMPLATES[size.id]['prices']}
         res['packageId'] = DEFAULT_PACKAGE