[Freeipa-devel] [PATCH] Remove dependency between ipa-pyton and ipa-server
Karl MacMillan
kmacmill at redhat.com
Fri Oct 19 19:02:36 UTC 2007
# HG changeset patch
# User "Karl MacMillan <kmacmill at redhat.com>"
# Date 1192820498 14400
# Node ID 516a862e61b99d4568620b1c3f446f3778ec5f4a
# Parent 82d6225b95a95f399f93141d559beaa9e9b6ab4d
Remove dependency between ipa-pyton and ipa-server
Current ipa-python imports and calls code from ipaserver (which is in
the ipa-server package). This makes it impossible to use the admin
tools or the ipa-python package on a system without the server bits
installed. This fixes that in a fairly minimal way.
diff -r 82d6225b95a9 -r 516a862e61b9 ipa-python/ipaclient.py
--- a/ipa-python/ipaclient.py Fri Oct 19 14:20:11 2007 -0400
+++ b/ipa-python/ipaclient.py Fri Oct 19 15:01:38 2007 -0400
@@ -20,10 +20,7 @@
#!/usr/bin/python
import sys
-if "/usr/share/ipa" not in sys.path:
- sys.path.append("/usr/share/ipa")
-
-from ipaserver import funcs
+
import ipa.rpcclient as rpcclient
import entity
import user
@@ -33,12 +30,12 @@ import config
class IPAClient:
- def __init__(self,local=None):
- self.local = local
- if local:
- self.transport = funcs.IPAServer()
- # client needs to call set_principal(user at REALM)
+ def __init__(self,transport=None):
+ if transport:
+ self.local = True
+ self.transport = transport
else:
+ self.local = False
self.transport = rpcclient.RPCClient()
def set_principal(self,princ):
diff -r 82d6225b95a9 -r 516a862e61b9 ipa-server/ipa-gui/ipagui/subcontrollers/ipacontroller.py
--- a/ipa-server/ipa-gui/ipagui/subcontrollers/ipacontroller.py Fri Oct 19 14:20:11 2007 -0400
+++ b/ipa-server/ipa-gui/ipagui/subcontrollers/ipacontroller.py Fri Oct 19 15:01:38 2007 -0400
@@ -10,6 +10,7 @@ from turbogears import identity
from turbogears import identity
import ipa.ipaclient
+from ipaserver import funcs
import ipa.config
log = logging.getLogger(__name__)
@@ -23,7 +24,8 @@ class IPAController(controllers.Controll
raise turbogears.redirect("/")
def get_ipaclient(self):
- client = ipa.ipaclient.IPAClient(True)
+ transport = funcs.IPAServer()
+ client = ipa.ipaclient.IPAClient(transport)
client.set_krbccache(os.environ["KRB5CCNAME"])
return client
More information about the Freeipa-devel
mailing list