diff options
author | Jack Neely <jjneely@ncsu.edu> | 2011-06-10 13:29:23 -0400 |
---|---|---|
committer | Jack Neely <jjneely@ncsu.edu> | 2011-06-10 13:29:23 -0400 |
commit | 90c85147bacea14771abf8faa1fc5f185418d14b (patch) | |
tree | b10e06fc80ed714f5376b169e32b8953479211f1 /src/lib/Server/Admin/Xcmd.py | |
parent | 4f3da4543ec4e8c3c4776ae2ee3611e47ce78525 (diff) | |
parent | ce6a228d33ace4136dc2b5388c64795dfbd26ffb (diff) | |
download | bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.tar.gz bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.tar.bz2 bcfg2-90c85147bacea14771abf8faa1fc5f185418d14b.zip |
Merge branch 'master' of github.com:solj/bcfg2
Diffstat (limited to 'src/lib/Server/Admin/Xcmd.py')
-rw-r--r-- | src/lib/Server/Admin/Xcmd.py | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/lib/Server/Admin/Xcmd.py b/src/lib/Server/Admin/Xcmd.py index 8ea98b79c..2cb085346 100644 --- a/src/lib/Server/Admin/Xcmd.py +++ b/src/lib/Server/Admin/Xcmd.py @@ -1,9 +1,12 @@ +import sys + import Bcfg2.Options import Bcfg2.Proxy import Bcfg2.Server.Admin -import sys -import xmlrpclib +# Compatibility import +from Bcfg2.Bcfg2Py3k import xmlrpclib + class Xcmd(Bcfg2.Server.Admin.Mode): __shorthelp__ = ("XML-RPC Command Interface") @@ -16,8 +19,9 @@ class Xcmd(Bcfg2.Server.Admin.Mode): 'user': Bcfg2.Options.CLIENT_USER, 'password': Bcfg2.Options.SERVER_PASSWORD, 'key': Bcfg2.Options.SERVER_KEY, - 'certificate' : Bcfg2.Options.CLIENT_CERT, - 'ca' : Bcfg2.Options.CLIENT_CA + 'certificate': Bcfg2.Options.CLIENT_CERT, + 'ca': Bcfg2.Options.CLIENT_CA, + 'timeout': Bcfg2.Options.CLIENT_TIMEOUT, } setup = Bcfg2.Options.OptionParser(optinfo) setup.parse(sys.argv[2:]) @@ -25,9 +29,10 @@ class Xcmd(Bcfg2.Server.Admin.Mode): proxy = Bcfg2.Proxy.ComponentProxy(setup['server'], setup['user'], setup['password'], - key = setup['key'], - cert = setup['certificate'], - ca = setup['ca'], timeout=180) + key=setup['key'], + cert=setup['certificate'], + ca=setup['ca'], + timeout=setup['timeout']) if len(setup['args']) == 0: print("Usage: xcmd <xmlrpc method> <optional arguments>") return @@ -36,8 +41,9 @@ class Xcmd(Bcfg2.Server.Admin.Mode): if len(setup['args']) > 1: args = tuple(setup['args'][1:]) try: - data = apply(getattr(proxy, cmd), args) - except xmlrpclib.Fault, flt: + data = getattr(proxy, cmd)(*args) + except xmlrpclib.Fault: + flt = sys.exc_info()[1] if flt.faultCode == 7: print("Unknown method %s" % cmd) return @@ -46,4 +52,4 @@ class Xcmd(Bcfg2.Server.Admin.Mode): else: raise if data != None: - print data + print(data) |