summaryrefslogtreecommitdiffstats
path: root/func/overlord
diff options
context:
space:
mode:
authorScott Henson <shenson@redhat.com>2008-01-13 14:42:07 -0500
committerScott Henson <shenson@redhat.com>2008-01-13 14:42:07 -0500
commit7a97b1194eb650555febbe85960c8765b6530572 (patch)
tree77cd28d09e7645e9987dd5841702da3b77ef196a /func/overlord
parent63170952d465a8acf8355e7b346733e4f6ddcace (diff)
downloadthird_party-func-7a97b1194eb650555febbe85960c8765b6530572.tar.gz
third_party-func-7a97b1194eb650555febbe85960c8765b6530572.tar.xz
third_party-func-7a97b1194eb650555febbe85960c8765b6530572.zip
Give people the ability to get exceptions back from the other side of the client
Diffstat (limited to 'func/overlord')
-rwxr-xr-xfunc/overlord/client.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/func/overlord/client.py b/func/overlord/client.py
index c6d8ab6..6bebaf8 100755
--- a/func/overlord/client.py
+++ b/func/overlord/client.py
@@ -114,7 +114,7 @@ def isServer(server_string):
class Client(object):
def __init__(self, server_spec, port=DEFAULT_PORT, interactive=False,
- verbose=False, noglobs=False, nforks=1, config=None):
+ verbose=False, noglobs=False, nforks=1, config=None, noexceptions=True):
"""
Constructor.
@server_spec -- something like "*.example.org" or "foosball"
@@ -134,6 +134,7 @@ class Client(object):
self.interactive = interactive
self.noglobs = noglobs
self.nforks = nforks
+ self.noexceptions= noexceptions
self.servers = expand_servers(self.server_spec, port=self.port, noglobs=self.noglobs,verbose=self.verbose)
@@ -203,6 +204,8 @@ class Client(object):
if self.interactive:
sys.stderr.write("remote exception on %s: %s\n" %
(server, str(e)))
+ if self.noglob and not self.noexceptions:
+ raise(e)
if self.noglobs:
return retval