summaryrefslogtreecommitdiffstats
path: root/ipa-server/ipaserver/httpinstance.py
diff options
context:
space:
mode:
authorMark McLoughlin <markmc@redhat.com>2008-01-11 11:57:36 +0000
committerMark McLoughlin <markmc@redhat.com>2008-01-11 11:57:36 +0000
commit4a162f6fc8d53d959dd23e1138059dd239ff5124 (patch)
tree650d2c3394b728aa694e6da9ea8ded29427ab99c /ipa-server/ipaserver/httpinstance.py
parentc7f3c746ccfd74480064dbe73fbc754548c30927 (diff)
downloadfreeipa.git-4a162f6fc8d53d959dd23e1138059dd239ff5124.tar.gz
freeipa.git-4a162f6fc8d53d959dd23e1138059dd239ff5124.tar.xz
freeipa.git-4a162f6fc8d53d959dd23e1138059dd239ff5124.zip
Add ipa-server-install --uninstall
Add a --uninstall option to ipa-server-install which tries to restore the system to the way it was before ipa-server-install was run using the state backed up through sysrestore.py. Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Diffstat (limited to 'ipa-server/ipaserver/httpinstance.py')
-rw-r--r--ipa-server/ipaserver/httpinstance.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/ipa-server/ipaserver/httpinstance.py b/ipa-server/ipaserver/httpinstance.py
index 76e314df..1fa3eb7c 100644
--- a/ipa-server/ipaserver/httpinstance.py
+++ b/ipa-server/ipaserver/httpinstance.py
@@ -158,3 +158,26 @@ class HTTPInstance(service.Service):
"-e", ".html",
tmpdir])
shutil.rmtree(tmpdir)
+
+ def uninstall(self):
+ running = self.restore_state("running")
+ enabled = self.restore_state("enabled")
+
+ if not running is None:
+ self.stop()
+
+ if not enabled is None and not enabled:
+ self.chkconfig_off()
+
+ for f in ["/etc/httpd/conf.d/ipa.conf", SSL_CONF, NSS_CONF]:
+ sysrestore.restore_file(f)
+
+ sebool_state = self.restore_state("httpd_can_network_connect")
+ if not sebool_state is None:
+ try:
+ ipautil.run(["/usr/sbin/setsebool", "-P", "httpd_can_network_connect", sebool_state])
+ except:
+ self.print_msg(selinux_warning)
+
+ if not running is None and running:
+ self.start()