diff options
author | Martin Kosek <mkosek@redhat.com> | 2011-03-01 14:17:03 +0100 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2011-03-03 11:02:02 -0500 |
commit | f785af4efea088466f8ec2259c79640b9f94e542 (patch) | |
tree | 9749d8138cfad8e2872e96c8c6ea6d8fe7ccc332 /ipaserver | |
parent | 620903ff27b0dec764a618e2962a8623dde0febe (diff) | |
download | freeipa-f785af4efea088466f8ec2259c79640b9f94e542.tar.gz freeipa-f785af4efea088466f8ec2259c79640b9f94e542.tar.xz freeipa-f785af4efea088466f8ec2259c79640b9f94e542.zip |
Inconsistent sysrestore file handling by IPA server installer
IPA server/replica uninstallation may fail when it tries to restore
a Directory server configuration file in sysrestore directory, which
was already restored before.
The problem is in Directory Server uninstaller which uses and modifies
its own image of sysrestore directory state instead of using the
common uninstaller image.
https://fedorahosted.org/freeipa/ticket/1026
Diffstat (limited to 'ipaserver')
-rw-r--r-- | ipaserver/install/dsinstance.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ipaserver/install/dsinstance.py b/ipaserver/install/dsinstance.py index 64954c408..07e15cdf0 100644 --- a/ipaserver/install/dsinstance.py +++ b/ipaserver/install/dsinstance.py @@ -171,7 +171,7 @@ info: IPA V2.0 """ class DsInstance(service.Service): - def __init__(self, realm_name=None, domain_name=None, dm_password=None): + def __init__(self, realm_name=None, domain_name=None, dm_password=None, fstore=None): service.Service.__init__(self, "dirsrv", dm_password=dm_password) self.realm_name = realm_name self.sub_dict = None @@ -189,7 +189,10 @@ class DsInstance(service.Service): else: self.suffix = None - self.fstore = sysrestore.FileStore('/var/lib/ipa/sysrestore') + if fstore: + self.fstore = fstore + else: + self.fstore = sysrestore.FileStore('/var/lib/ipa/sysrestore') def __common_setup(self): |