From 52a9b23ee86b04b82a366e7ea5578cb61e96e52d Mon Sep 17 00:00:00 2001 From: Jan Cholasta Date: Apr 16 2013 10:55:21 +0000 Subject: Delete DNS records in ipa-ca on ipa-csreplica-manage del. https://fedorahosted.org/freeipa/ticket/3547 --- diff --git a/install/tools/ipa-csreplica-manage b/install/tools/ipa-csreplica-manage index db368c6..55bf565 100755 --- a/install/tools/ipa-csreplica-manage +++ b/install/tools/ipa-csreplica-manage @@ -26,7 +26,7 @@ import ldap, krbV from ipapython.ipa_log_manager import * from ipapython import ipautil -from ipaserver.install import replication, installutils +from ipaserver.install import replication, installutils, bindinstance from ipaserver import ipaldap from ipapython import version from ipapython import dogtag @@ -380,6 +380,18 @@ def del_master(realm, hostname, options): except Exception, e: sys.exit("There were issues removing a connection: %s" % convert_error(e)) + # 6. And clean up the removed replica DNS entries if any. + try: + if bindinstance.dns_container_exists(options.host, api.env.basedn, + dm_password=options.dirman_passwd): + api.Backend.ldap2.connect(bind_dn=DN(('cn', 'Directory Manager')), + bind_pw=options.dirman_passwd) + bind = bindinstance.BindInstance() + bind.remove_ipa_ca_dns_records(hostname, realm.lower()) + except Exception, e: + print "Failed to cleanup %s DNS entries: %s" % (hostname, e) + print "You may need to manually remove them from the tree" + def add_link(realm, replica1, replica2, dirman_passwd, options): repl2 = get_cs_replication_manager(realm, replica2, dirman_passwd) try: