summaryrefslogtreecommitdiffstats
path: root/func/overlord/client.py
diff options
context:
space:
mode:
Diffstat (limited to 'func/overlord/client.py')
-rwxr-xr-xfunc/overlord/client.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/func/overlord/client.py b/func/overlord/client.py
index 98edaed..6e663ea 100755
--- a/func/overlord/client.py
+++ b/func/overlord/client.py
@@ -166,7 +166,7 @@ class Client(object):
"""
Use this to acquire status from jobs when using run with async client handles
"""
- return jobthing.job_status(jobid)
+ return jobthing.job_status(jobid, client_class=Client)
# -----------------------------------------------
@@ -200,7 +200,16 @@ class Client(object):
# we can't call "call" on s, since thats a rpc, so
# we call gettatr around it.
meth = "%s.%s" % (module, method)
+
+ # async calling signature has an "imaginary" prefix
+ # so async.abc.def does abc.def as a background task.
+ # see Wiki docs for details
+ if self.async:
+ meth = "async.%s" % meth
+
+ # this is the point at which we make the remote call.
retval = getattr(conn, meth)(*args[:])
+
if self.interactive:
print retval
except Exception, e: