Add simple test to see if client is already configured

If this ever gets out of sync the user can always remove
/var/lib/ipa-client/sysrestore/*, they just need to understand the
implications.

One potential problem is with certmonger. If you install the client
and then re-install without uninstalling then the subsequent
certificate request by certmonger will fail because it will already
be tracking a certificate in /etc/pki/nssdb of the same nickname and
subject (the old cert).
This commit is contained in:
Rob Crittenden 2010-05-06 16:41:59 -04:00 committed by Jason Gerard DeRose
parent cd5eddd843
commit 3bf7268d74
2 changed files with 12 additions and 0 deletions

View File

@ -440,6 +440,10 @@ def main():
if options.uninstall:
return uninstall(options)
if fstore.has_files():
print "IPA client is already configured on this system."
return 1
cli_domain = None
cli_server = None
cli_realm = None

View File

@ -203,6 +203,14 @@ class FileStore:
return True
def has_files(self):
"""Return True or False if there are any files in the index
Can be used to determine if a program is configured.
"""
return len(self.files) > 0
class StateFile:
"""A metadata file for recording system state which can
be backed up and later restored. The format is something