diff options
author | Martin Basti <mbasti@redhat.com> | 2015-05-12 13:31:57 +0200 |
---|---|---|
committer | Jan Cholasta <jcholast@redhat.com> | 2015-05-19 12:43:04 +0000 |
commit | 78baeeb77c867d00c9c1ceb41c58512e487abb0c (patch) | |
tree | f3edc97760ecbfef5ba723b8ef3d4ec367d054ff /ipaserver/install/dsinstance.py | |
parent | f6e3088b87cce1e0aefa9afbfeaf00eaea02dff2 (diff) | |
download | freeipa-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.py | 6 |
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() |