summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/dsinstance.py
diff options
context:
space:
mode:
authorMartin Basti <mbasti@redhat.com>2015-05-12 13:31:57 +0200
committerJan Cholasta <jcholast@redhat.com>2015-05-19 12:43:04 +0000
commit78baeeb77c867d00c9c1ceb41c58512e487abb0c (patch)
treef3edc97760ecbfef5ba723b8ef3d4ec367d054ff /ipaserver/install/dsinstance.py
parentf6e3088b87cce1e0aefa9afbfeaf00eaea02dff2 (diff)
downloadfreeipa-78baeeb77c867d00c9c1ceb41c58512e487abb0c.tar.gz
freeipa-78baeeb77c867d00c9c1ceb41c58512e487abb0c.tar.xz
freeipa-78baeeb77c867d00c9c1ceb41c58512e487abb0c.zip
Server Upgrade: handle errors better
* Prevent to continue with upgrade if a fatal error happened * Use exceptions to handle failures https://fedorahosted.org/freeipa/ticket/4904 Reviewed-By: David Kupka <dkupka@redhat.com>
Diffstat (limited to 'ipaserver/install/dsinstance.py')
-rw-r--r--ipaserver/install/dsinstance.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/ipaserver/install/dsinstance.py b/ipaserver/install/dsinstance.py
index e216edbfa..f1d24e49d 100644
--- a/ipaserver/install/dsinstance.py
+++ b/ipaserver/install/dsinstance.py
@@ -506,7 +506,11 @@ class DsInstance(service.Service):
def apply_updates(self):
data_upgrade = upgradeinstance.IPAUpgrade(self.realm)
- data_upgrade.create_instance()
+ try:
+ data_upgrade.create_instance()
+ except Exception as e:
+ # very fatal errors only will raise exception
+ raise RuntimeError("Update failed: %s" % e)
installutils.store_version()