3 from Remote import Remote
4 from Table import Table
7 class Node(dict, Remote):
11 'hostname': None, # Node Hostname
12 'host': 'localhost', # host where node lives
13 'vserver': None, # vserver where this node lives
14 'type': 'virtual', # type of node
15 'nodenetworks': [], # node networks
16 'homedir': '/var/VirtualMachines/',
17 'rootkey': None # path to root ssh key
20 def __init__(self, config, fields = {}):
22 # XX Filter out fields not specified in fields
23 dict.__init__(self, self.fields)
25 # Merge defined fields with defaults
29 class Nodes(list, Table):
31 def __init__(self, config, nodes):
32 nodelist = [Node(config, node) for node in nodes]
33 list.__init__(self, nodelist)