From 1df10a88cd8b36be8b9b4d47c49dd9e7d1d12bc0 Mon Sep 17 00:00:00 2001 From: Rob Crittenden Date: Mon, 26 Jul 2010 17:54:38 -0400 Subject: 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 --- ipalib/plugable.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'ipalib/plugable.py') diff --git a/ipalib/plugable.py b/ipalib/plugable.py index fd5f31a76..cb87ebeab 100644 --- a/ipalib/plugable.py +++ b/ipalib/plugable.py @@ -455,6 +455,10 @@ class API(DictProxy): dest='interactive', help='Prompt for NO values (even if required)' ) + parser.add_option('-f', '--no-fallback', action='store_false', + dest='fallback', + help='Only use the server configured in /etc/ipa/default.conf' + ) topics = optparse.OptionGroup(parser, "Available help topics", "ipa help topics") cmds = optparse.OptionGroup(parser, "Available commands", @@ -479,7 +483,8 @@ class API(DictProxy): # --Jason, 2008-10-31 pass overrides[str(key.strip())] = value.strip() - for key in ('conf', 'debug', 'verbose', 'prompt_all', 'interactive'): + for key in ('conf', 'debug', 'verbose', 'prompt_all', 'interactive', + 'fallback'): value = getattr(options, key, None) if value is not None: overrides[key] = value -- cgit