diff options
author | Martin Basti <mbasti@redhat.com> | 2016-06-13 20:38:00 +0200 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-06-17 15:22:24 +0200 |
commit | 08265f1e92bd91d9e4ba3285b953ff9ccd79040b (patch) | |
tree | 99c0d5cd0c6307fe61f42b5f54510571179fb557 /ipaserver/install/bindinstance.py | |
parent | 52590d6fa581e3b53e2c9350dc307a1f360c40a3 (diff) | |
download | freeipa-08265f1e92bd91d9e4ba3285b953ff9ccd79040b.tar.gz freeipa-08265f1e92bd91d9e4ba3285b953ff9ccd79040b.tar.xz freeipa-08265f1e92bd91d9e4ba3285b953ff9ccd79040b.zip |
DNS Locations: dnsserver: use the newer config way in installer
Store some parts of DNS configuration in LDAP tree instead of named.conf
https://fedorahosted.org/freeipa/ticket/2008
Reviewed-By: Petr Spacek <pspacek@redhat.com>
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaserver/install/bindinstance.py')
-rw-r--r-- | ipaserver/install/bindinstance.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py index 9df4f7ad9..e49abce23 100644 --- a/ipaserver/install/bindinstance.py +++ b/ipaserver/install/bindinstance.py @@ -40,6 +40,7 @@ from ipaserver.install import sysupgrade from ipaserver.install.cainstance import IPA_CA_RECORD from ipapython import sysrestore, ipautil, ipaldap from ipapython import dnsutil +from ipapython.dnsutil import DNSName from ipapython.ipa_log_manager import root_logger from ipapython.dn import DN import ipalib @@ -699,6 +700,8 @@ class BindInstance(service.Service): self.step("setting up kerberos principal", self.__setup_principal) self.step("setting up named.conf", self.__setup_named_conf) + self.step("setting up server configuration", + self.__setup_server_configuration) # named has to be started after softhsm initialization # self.step("restarting named", self.__start) @@ -983,6 +986,26 @@ class BindInstance(service.Service): 'forward_policy_conflict_with_empty_zones_handled', True ) + def __setup_server_configuration(self): + try: + self.api.Command.dnsserver_add( + self.fqdn, idnssoamname=DNSName(self.fqdn).make_absolute(), + ) + except errors.DuplicateEntry: + # probably reinstallation of DNS + pass + + try: + self.api.Command.dnsserver_mod( + self.fqdn, + idnsforwarders=[unicode(f) for f in self.forwarders], + idnsforwardpolicy=unicode(self.forward_policy) + ) + except errors.EmptyModlist: + pass + + sysupgrade.set_upgrade_state('dns', 'server_config_to_ldap', True) + def __setup_resolv_conf(self): if not self.fstore.has_file(RESOLV_CONF): self.fstore.backup_file(RESOLV_CONF) |