summaryrefslogtreecommitdiffstats
path: root/ipaclient/install/client.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipaclient/install/client.py')
-rw-r--r--ipaclient/install/client.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/ipaclient/install/client.py b/ipaclient/install/client.py
index 440475b94..4403283f2 100644
--- a/ipaclient/install/client.py
+++ b/ipaclient/install/client.py
@@ -2286,7 +2286,21 @@ def install_check(options):
def install(options):
try:
- return _install(options)
+ rval = _install(options)
+ if rval == CLIENT_INSTALL_ERROR:
+ if options.force:
+ root_logger.warning(
+ "Installation failed. Force set so not rolling back "
+ "changes.")
+ elif options.on_master:
+ root_logger.warning(
+ "Installation failed. As this is IPA server, changes will "
+ "not be rolled back.")
+ else:
+ root_logger.error("Installation failed. Rolling back changes.")
+ options.unattended = True
+ uninstall(options)
+ return rval
finally:
try:
os.remove(CCACHE_FILE)