483b06
From 19738b56604f50e3806b220e74ac4a5ab52f71a4 Mon Sep 17 00:00:00 2001
483b06
From: Jan Cholasta <jcholast@redhat.com>
483b06
Date: Fri, 7 Apr 2017 07:40:41 +0200
483b06
Subject: [PATCH] httpinstance: avoid httpd restart during certificate request
483b06
483b06
httpd is restarted by certmonger in the restart_httpd script after the
483b06
httpd certificate is saved if it was previously running. The restart will
483b06
fail because httpd is not properly configured at this point.
483b06
483b06
Stop httpd at the beginning of httpd install to avoid the restart.
483b06
483b06
https://pagure.io/freeipa/issue/6757
483b06
483b06
Reviewed-By: Martin Babinsky <mbabinsk@redhat.com>
483b06
---
483b06
 ipaserver/install/httpinstance.py | 7 ++++---
483b06
 1 file changed, 4 insertions(+), 3 deletions(-)
483b06
483b06
diff --git a/ipaserver/install/httpinstance.py b/ipaserver/install/httpinstance.py
483b06
index 079ea92606cc53f98beca1759a7e24db64bfd3f4..d7cd776ab9831b5408797ae41b7c7fbb10707b18 100644
483b06
--- a/ipaserver/install/httpinstance.py
483b06
+++ b/ipaserver/install/httpinstance.py
483b06
@@ -160,6 +160,7 @@ class HTTPInstance(service.Service):
483b06
             self.ca_is_configured = ca_is_configured
483b06
         self.promote = promote
483b06
 
483b06
+        self.step("stopping httpd", self.__stop)
483b06
         self.step("setting mod_nss port to 443", self.__set_mod_nss_port)
483b06
         self.step("setting mod_nss cipher suite",
483b06
                   self.set_mod_nss_cipher_suite)
483b06
@@ -185,15 +186,15 @@ class HTTPInstance(service.Service):
483b06
             self.step("create KDC proxy user", create_kdcproxy_user)
483b06
             self.step("create KDC proxy config", self.create_kdcproxy_conf)
483b06
             self.step("enable KDC proxy", self.enable_kdcproxy)
483b06
-        self.step("restarting httpd", self.__start)
483b06
+        self.step("starting httpd", self.start)
483b06
         self.step("configuring httpd to start on boot", self.__enable)
483b06
         self.step("enabling oddjobd", self.enable_and_start_oddjobd)
483b06
 
483b06
         self.start_creation()
483b06
 
483b06
-    def __start(self):
483b06
+    def __stop(self):
483b06
         self.backup_state("running", self.is_running())
483b06
-        self.restart()
483b06
+        self.stop()
483b06
 
483b06
     def __enable(self):
483b06
         self.backup_state("enabled", self.is_enabled())
483b06
-- 
483b06
2.9.3
483b06