diff options
author | Martin Basti <mbasti@redhat.com> | 2016-01-13 17:27:06 +0100 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-01-14 14:34:57 +0100 |
commit | 58c42ddac0964a8cce7c1e1faa7516da53f028ad (patch) | |
tree | 84c32099a816b381eede206d19855f62c27f6405 | |
parent | 26899c91afd36b39908a3a73363aff1787c9dc07 (diff) | |
download | freeipa-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.py | 12 |
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) |