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/05/05 00:01:25 UTC
svn commit: r941069 - /incubator/libcloud/trunk/libcloud/drivers/gogrid.py
Author: pquerna
Date: Tue May 4 22:01:25 2010
New Revision: 941069
URL: http://svn.apache.org/viewvc?rev=941069&view=rev
Log:
Improve GoGrid driver:
- Move extensions to ex prefix
- Rename private methods to include _ prefix
- Add create_node doc string
Modified:
incubator/libcloud/trunk/libcloud/drivers/gogrid.py
Modified: incubator/libcloud/trunk/libcloud/drivers/gogrid.py
URL: http://svn.apache.org/viewvc/incubator/libcloud/trunk/libcloud/drivers/gogrid.py?rev=941069&r1=941068&r2=941069&view=diff
==============================================================================
--- incubator/libcloud/trunk/libcloud/drivers/gogrid.py (original)
+++ incubator/libcloud/trunk/libcloud/drivers/gogrid.py Tue May 4 22:01:25 2010
@@ -127,23 +127,23 @@ class GoGridNodeDriver(NodeDriver):
_instance_types = GOGRID_INSTANCE_TYPES
- def get_state(self, element):
+ def _get_state(self, element):
try:
return STATE[element['state']['name']]
except:
pass
return NodeState.UNKNOWN
- def get_ip(self, element):
+ def _get_ip(self, element):
return element['ip']['ip']
- def get_id(self,element):
+ def _get_id(self,element):
return element['id']
def _to_node(self, element):
- state = self.get_state(element)
- ip = self.get_ip(element)
- id = self.get_id(element)
+ state = self._get_state(element)
+ ip = self._get_ip(element)
+ id = self._get_id(element)
n = GoGridNode(id=id,
name=element['name'],
state=state,
@@ -172,7 +172,7 @@ class GoGridNodeDriver(NodeDriver):
return hashlib.sha1(uuid_str).hexdigest()
def list_nodes(self):
- res = self.server_list()
+ res = self._server_list()
return [ self._to_node(el)
for el
in res['list'] ]
@@ -180,31 +180,31 @@ class GoGridNodeDriver(NodeDriver):
def reboot_node(self, node):
id = node.id
power = 'restart'
- res = self.server_power(id, power)
+ res = self._server_power(id, power)
if not res.success():
raise Exception(res.parse_error())
return True
def destroy_node(self, node):
id = node.id
- res = self.server_delete(id)
+ res = self._server_delete(id)
if not res.success():
raise Exception(res.parse_error())
return True
- def server_list(self):
+ def _server_list(self):
return self.connection.request('/api/grid/server/list').object
- def server_power(self, id, power):
+ def _server_power(self, id, power):
# power in ['start', 'stop', 'restart']
params = {'id': id, 'power': power}
return self.connection.request("/api/grid/server/power", params)
- def server_delete(self, id):
+ def _server_delete(self, id):
params = {'id': id}
return self.connection.request("/api/grid/server/delete", params)
- def get_first_ip(self):
+ def _get_first_ip(self):
params = {'ip.state': 'Unassigned', 'ip.type':'public'}
object = self.connection.request("/api/grid/ip/list", params).object
return object['list'][0]['ip']
@@ -217,13 +217,20 @@ class GoGridNodeDriver(NodeDriver):
return [NodeLocation(0, "GoGrid Los Angeles", 'US', self)]
def create_node(self, **kwargs):
+ """Create a new GoGird node
+
+ See L{NodeDriver.create_node} for more keyword args.
+
+ @keyword ex_description: Description of a Node
+ @type ex_description: C{string}
+ """
name = kwargs['name']
image = kwargs['image']
size = kwargs['size']
- first_ip = self.get_first_ip()
+ first_ip = self._get_first_ip()
params = {'name': name,
'image': image.id,
- 'description': kwargs.get('description',''),
+ 'description': kwargs.get('ex_description',''),
'server.ram': size.id,
'ip':first_ip}