diff --git a/roles/ipaserver/library/ipaserver_enable_ipa.py b/roles/ipaserver/library/ipaserver_enable_ipa.py
index 77e4aade6b1189809c8c5f10f02f9523b4d3122d..0419c542ccda2588cedeeb200cae972710b3cbb2 100644
--- a/roles/ipaserver/library/ipaserver_enable_ipa.py
+++ b/roles/ipaserver/library/ipaserver_enable_ipa.py
@@ -53,6 +53,7 @@ def main():
     ansible_module = AnsibleModule(
         argument_spec = dict(
             hostname=dict(required=False),
+            setup_dns=dict(required=True, type='bool'),
             setup_ca=dict(required=True, type='bool'),
         ),
     )
@@ -63,6 +64,7 @@ def main():
     # set values #############################################################
 
     options.host_name = ansible_module.params.get('hostname')
+    options.setup_dns = ansible_module.params.get('setup_dns')
     options.setup_ca = ansible_module.params.get('setup_ca')
 
     # Configuration for ipalib, we will bootstrap and finalize later, after
@@ -91,6 +93,17 @@ def main():
         # Make sure the files we crated in /var/run are recreated at startup
         tasks.configure_tmpfiles()
 
+    if hasattr(service, "enable_services"):
+        # Enable configured services and update DNS SRV records
+        service.enable_services(options.host_name)
+        api.Command.dns_update_system_records()
+
+        if not options.setup_dns:
+            # After DNS and AD trust are configured and services are
+            # enabled, create a dummy instance to dump DNS configuration.
+            bind = bindinstance.BindInstance(fstore)
+            bind.create_file_with_system_records()
+
     with redirect_stdout(ansible_log):
         services.knownservices.ipa.enable()
 
diff --git a/roles/ipaserver/tasks/install.yml b/roles/ipaserver/tasks/install.yml
index bc6999a03d7ea65289670e848b81d59eecce9103..c0a9f97b960ab2c9cf3f3b0e474e2aa653f27b01 100644
--- a/roles/ipaserver/tasks/install.yml
+++ b/roles/ipaserver/tasks/install.yml
@@ -358,6 +358,7 @@
   - name: Install - Enable IPA
     ipaserver_enable_ipa:
       hostname: "{{ result_ipaserver_test.hostname }}"
+      setup_dns: "{{ ipaserver_setup_dns }}"
       setup_ca: "{{ result_ipaserver_test.setup_ca }}"
     register: result_ipaserver_enable_ipa