summaryrefslogtreecommitdiffstats
path: root/ipapython
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2010-05-03 15:21:51 -0400
committerJason Gerard DeRose <jderose@redhat.com>2010-05-03 13:41:18 -0600
commit04e9056ec2b6e0360f3f3545fd638ecc17aaad2c (patch)
treeb9fefef29f7ba68c1932aac39f7b2bedfc85d356 /ipapython
parent6d35812252cb4fcf34cf13bf88cbb705560afc3a (diff)
downloadfreeipa-04e9056ec2b6e0360f3f3545fd638ecc17aaad2c.tar.gz
freeipa-04e9056ec2b6e0360f3f3545fd638ecc17aaad2c.tar.xz
freeipa-04e9056ec2b6e0360f3f3545fd638ecc17aaad2c.zip
Make the installer/uninstaller more aware of its state
We have had a state file for quite some time that is used to return the system to its pre-install state. We can use that to determine what has been configured. This patch: - uses the state file to determine if dogtag was installed - prevents someone from trying to re-install an installed server - displays some output when uninstalling - re-arranges the ipa_kpasswd installation so the state is properly saved - removes pkiuser if it was added by the installer - fetches and installs the CA on both masters and clients
Diffstat (limited to 'ipapython')
-rw-r--r--ipapython/sysrestore.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/ipapython/sysrestore.py b/ipapython/sysrestore.py
index ddc3ee051..d3c7a5017 100644
--- a/ipapython/sysrestore.py
+++ b/ipapython/sysrestore.py
@@ -314,3 +314,14 @@ class StateFile:
self.save()
return value
+
+ def has_state(self, module):
+ """Return True or False if there is any state stored for @module.
+
+ Can be used to determine if a service is configured.
+ """
+
+ if self.modules.has_key(module):
+ return True
+ else:
+ return False