summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Basti <mbasti@redhat.com>2016-01-13 17:27:06 +0100
committerMartin Basti <mbasti@redhat.com>2016-01-14 14:34:57 +0100
commit58c42ddac0964a8cce7c1e1faa7516da53f028ad (patch)
tree84c32099a816b381eede206d19855f62c27f6405
parent26899c91afd36b39908a3a73363aff1787c9dc07 (diff)
downloadfreeipa-58c42ddac0964a8cce7c1e1faa7516da53f028ad.tar.gz
freeipa-58c42ddac0964a8cce7c1e1faa7516da53f028ad.tar.xz
freeipa-58c42ddac0964a8cce7c1e1faa7516da53f028ad.zip
Warn about potential loss of CA, KRA, DNSSEC during uninstall
If connection do LDAP failed (or LDAP server is down) we cannot verify if there is any additonal instance of CA, KRA, DNSSEC master. In this case a user is warned and promted to confirm uninstallation. https://fedorahosted.org/freeipa/ticket/5544 Reviewed-By: David Kupka <dkupka@redhat.com>
-rw-r--r--ipaserver/install/server/install.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/ipaserver/install/server/install.py b/ipaserver/install/server/install.py
index 8a57886cd..49e97eb66 100644
--- a/ipaserver/install/server/install.py
+++ b/ipaserver/install/server/install.py
@@ -1078,8 +1078,18 @@ def uninstall_check(installer):
msg = ("\nWARNING: Failed to connect to Directory Server to find "
"information about replication agreements. Uninstallation "
"will continue despite the possible existing replication "
- "agreements.\n\n")
+ "agreements.\n\n"
+ "If this server is the last instance of CA, KRA, or DNSSEC "
+ "master, uninstallation may result in data loss.\n\n"
+ )
print(textwrap.fill(msg, width=80, replace_whitespace=False))
+
+ if (installer.interactive and not user_input(
+ "Are you sure you want to continue with the uninstall "
+ "procedure?", False)):
+ print("")
+ print("Aborting uninstall operation.")
+ sys.exit(1)
else:
dns.uninstall_check(options)