summaryrefslogtreecommitdiffstats
path: root/ipalib
diff options
context:
space:
mode:
authorMartin Kosek <mkosek@redhat.com>2012-03-15 13:51:59 +0100
committerRob Crittenden <rcritten@redhat.com>2012-03-26 00:33:45 -0400
commit52aa008b8719f4ea678efa8957794bb6dcd13893 (patch)
tree2e15bb800d3f25974badb2acceef61b3e9e20234 /ipalib
parentb944ad44b5ac66a253b28613cf0b722c4d4ad444 (diff)
downloadfreeipa-52aa008b8719f4ea678efa8957794bb6dcd13893.tar.gz
freeipa-52aa008b8719f4ea678efa8957794bb6dcd13893.tar.xz
freeipa-52aa008b8719f4ea678efa8957794bb6dcd13893.zip
Improve user awareness about dnsconfig
Global DNS configuration is a nice tool to maintain a common DNS settings stored in LDAP which are then used for all enrolled IPA servers. However, the settings stored in LDAP override local settings in named.conf on DNS servers. This patch adds more information about global DNS configuration options in install scripts and DNS module help. https://fedorahosted.org/freeipa/ticket/2525
Diffstat (limited to 'ipalib')
-rw-r--r--ipalib/plugins/dns.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/ipalib/plugins/dns.py b/ipalib/plugins/dns.py
index f47b180af..e69686cbf 100644
--- a/ipalib/plugins/dns.py
+++ b/ipalib/plugins/dns.py
@@ -189,6 +189,14 @@ EXAMPLES:
ipa dns-resolve www.example.com
ipa dns-resolve www
+
+GLOBAL DNS CONFIGURATION
+
+DNS configuration passed to command line install script is stored in a local
+configuration file on each IPA server where DNS service is configured. These
+local settings can be overridden with a common configuration stored in LDAP
+server:
+
Show global DNS configuration:
ipa dnsconfig-show
@@ -2701,16 +2709,30 @@ class dnsconfig(LDAPObject):
return entry
+ def postprocess_result(self, result):
+ if not any(param in result['result'] for param in self.params):
+ result['summary'] = unicode(_('Global DNS configuration is empty'))
+
api.register(dnsconfig)
class dnsconfig_mod(LDAPUpdate):
__doc__ = _('Modify global DNS configuration.')
+ def execute(self, *keys, **options):
+ result = super(dnsconfig_mod, self).execute(*keys, **options)
+ self.obj.postprocess_result(result)
+ return result
+
api.register(dnsconfig_mod)
class dnsconfig_show(LDAPRetrieve):
__doc__ = _('Show the current global DNS configuration.')
+ def execute(self, *keys, **options):
+ result = super(dnsconfig_show, self).execute(*keys, **options)
+ self.obj.postprocess_result(result)
+ return result
+
api.register(dnsconfig_show)