try:
return lambda *params : method(self.auth, *params)
- except ProtocolError:
+ except xmlrpclib.ProtocolError:
traceback.print_exc()
global_error_count += 1
if global_error_count >= 10:
def __repr__(self):
return self.api.__repr__()
-api = PLC(auth.auth, auth.server)
class CachedPLC(PLC):
return run_or_returncached
+api = PLC(auth.auth, auth.server)
+cacheapi = CachedPLC(auth.auth, auth.server)
+
def getAPI(url):
return xmlrpclib.Server(url, verbose=False, allow_none=True)
def getCachedAuthAPI():
return CachedPLC(auth.auth, auth.server)
+def getSessionAPI(session, server):
+ nodeauth = Auth(session=session)
+ return PLC(nodeauth.auth, server)
+def getUserAPI(username, password, server):
+ auth = Auth(username,password)
+ return PLC(auth.auth, server)
+
def getTechEmails(loginbase):
"""
For the given site, return all user email addresses that have the 'tech' role.
def getNodeNetworks(filter=None):
api = xmlrpclib.Server(auth.server, verbose=False, allow_none=True)
- nodenetworks = api.GetNodeNetworks(auth.auth, filter, None)
+ nodenetworks = api.GetInterfaces(auth.auth, filter, None)
return nodenetworks
def getNodes(filter=None, fields=None):
api = xmlrpclib.Server(auth.server, verbose=False, allow_none=True)
nodes = api.GetNodes(auth.auth, filter, fields)
#['boot_state', 'hostname',
- #'site_id', 'date_created', 'node_id', 'version', 'nodenetwork_ids',
+ #'site_id', 'date_created', 'node_id', 'version', 'interface_ids',
#'last_updated', 'peer_node_id', 'ssh_rsa_key' ])
return nodes