summaryrefslogtreecommitdiffstats
path: root/src/lib/Server/Admin/Xcmd.py
diff options
context:
space:
mode:
authorJack Neely <jjneely@ncsu.edu>2011-06-10 13:29:23 -0400
committerJack Neely <jjneely@ncsu.edu>2011-06-10 13:29:23 -0400
commit90c85147bacea14771abf8faa1fc5f185418d14b (patch)
treeb10e06fc80ed714f5376b169e32b8953479211f1 /src/lib/Server/Admin/Xcmd.py
parent4f3da4543ec4e8c3c4776ae2ee3611e47ce78525 (diff)
parentce6a228d33ace4136dc2b5388c64795dfbd26ffb (diff)
downloadbcfg2-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.py26
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)