summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Babinsky <mbabinsk@redhat.com>2015-11-27 14:05:21 +0100
committerMartin Basti <mbasti@redhat.com>2015-12-01 09:39:19 +0100
commitf6240f21fc9ae2ade54acedf98770e5f5e433d38 (patch)
tree6457692d35b2b716f864b5cf3981224fea21f19a
parent48548508676a28dae7c5a27b01fbe8bf288c1e8c (diff)
downloadfreeipa-f6240f21fc9ae2ade54acedf98770e5f5e433d38.tar.gz
freeipa-f6240f21fc9ae2ade54acedf98770e5f5e433d38.tar.xz
freeipa-f6240f21fc9ae2ade54acedf98770e5f5e433d38.zip
perform IPA client uninstallation as a last step of server uninstall
With the ability to promote replicas from an enrolled client the uninstallation procedure has to be changed slightly. If the client-side components are not removed last during replica uninstallation, we can end up with leftover ipa default.conf preventing future client re-enrollment. https://fedorahosted.org/freeipa/ticket/5410 Reviewed-By: Martin Basti <mbasti@redhat.com> Reviewed-By: Jan Cholasta <jcholast@redhat.com>
-rw-r--r--ipaserver/install/server/install.py26
1 files changed, 13 insertions, 13 deletions
diff --git a/ipaserver/install/server/install.py b/ipaserver/install/server/install.py
index 6ecb87ac9..bd07793bb 100644
--- a/ipaserver/install/server/install.py
+++ b/ipaserver/install/server/install.py
@@ -1046,19 +1046,6 @@ def uninstall(installer):
except Exception as e:
pass
- print("Removing IPA client configuration")
- try:
- (stdout, stderr, rc) = run([paths.IPA_CLIENT_INSTALL, "--on-master",
- "--unattended", "--uninstall"],
- raiseonerr=False)
- if rc not in [0, 2]:
- root_logger.debug("ipa-client-install returned %d" % rc)
- raise RuntimeError(stdout)
- except Exception as e:
- rv = 1
- print("Uninstall of client side components failed!")
- print("ipa-client-install returned: " + str(e))
-
ntpinstance.NTPInstance(fstore).uninstall()
kra.uninstall(False)
@@ -1138,6 +1125,19 @@ def uninstall(installer):
' # getcert stop-tracking -i <request_id>\n'
'for each id in: %s' % ', '.join(ids))
+ print("Removing IPA client configuration")
+ try:
+ (stdout, stderr, rc) = run([paths.IPA_CLIENT_INSTALL, "--on-master",
+ "--unattended", "--uninstall"],
+ raiseonerr=False)
+ if rc not in [0, 2]:
+ root_logger.debug("ipa-client-install returned %d" % rc)
+ raise RuntimeError(stdout)
+ except Exception as e:
+ rv = 1
+ print("Uninstall of client side components failed!")
+ print("ipa-client-install returned: " + str(e))
+
sys.exit(rv)