summaryrefslogtreecommitdiffstats
path: root/ipalib/frontend.py
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2010-07-26 17:54:38 -0400
committerRob Crittenden <rcritten@redhat.com>2010-08-16 10:35:27 -0400
commit1df10a88cd8b36be8b9b4d47c49dd9e7d1d12bc0 (patch)
tree965da3c4c157e0aaba6b876b578ebcf8a7dc190d /ipalib/frontend.py
parent3e6f0f5721f76977475792f09758f6b8dcc4ed4e (diff)
downloadfreeipa-1df10a88cd8b36be8b9b4d47c49dd9e7d1d12bc0.tar.gz
freeipa-1df10a88cd8b36be8b9b4d47c49dd9e7d1d12bc0.tar.xz
freeipa-1df10a88cd8b36be8b9b4d47c49dd9e7d1d12bc0.zip
Add support for client failover to the ipa command-line.
This adds a new global option to the ipa command, -f/--no-fallback. If this is included then just the server configured in /etc/ipa/default.conf is used. Otherwise that is tried first then all servers in DNS with the ldap SRV record are tried. Create a new Local() Command class for local-only commands. The help command is one of these. It shouldn't need a remote connection to execute. ticket #15
Diffstat (limited to 'ipalib/frontend.py')
-rw-r--r--ipalib/frontend.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/ipalib/frontend.py b/ipalib/frontend.py
index 1c4fea8cb..e505f5354 100644
--- a/ipalib/frontend.py
+++ b/ipalib/frontend.py
@@ -930,6 +930,21 @@ class LocalOrRemote(Command):
return self.execute(*args, **options)
+class Local(Command):
+ """
+ A command that is explicitly executed locally.
+
+ This is for commands that makes sense to execute only locally
+ such as the help command.
+ """
+
+ def run(self, *args, **options):
+ """
+ Dispatch to forward() onlly.
+ """
+ return self.forward(*args, **options)
+
+
class Object(HasParam):
backend = None
methods = None