summaryrefslogtreecommitdiff
path: root/heat_integrationtests/functional/test_reload_on_sighup.py
diff options
context:
space:
mode:
Diffstat (limited to 'heat_integrationtests/functional/test_reload_on_sighup.py')
-rw-r--r--heat_integrationtests/functional/test_reload_on_sighup.py21
1 files changed, 18 insertions, 3 deletions
diff --git a/heat_integrationtests/functional/test_reload_on_sighup.py b/heat_integrationtests/functional/test_reload_on_sighup.py
index b014f49..d646581 100644
--- a/heat_integrationtests/functional/test_reload_on_sighup.py
+++ b/heat_integrationtests/functional/test_reload_on_sighup.py
@@ -10,6 +10,8 @@
10# License for the specific language governing permissions and limitations 10# License for the specific language governing permissions and limitations
11# under the License. 11# under the License.
12 12
13import re
14import subprocess
13import time 15import time
14 16
15import eventlet 17import eventlet
@@ -26,6 +28,13 @@ class ReloadOnSighupTest(functional_base.FunctionalTestsBase):
26 self.config_file = "/etc/heat/heat.conf" 28 self.config_file = "/etc/heat/heat.conf"
27 super(ReloadOnSighupTest, self).setUp() 29 super(ReloadOnSighupTest, self).setUp()
28 30
31 def _is_mod_wsgi_daemon(self, service):
32 process = ''.join(['wsgi:', service[:9]]).replace('_', '-')
33 s = subprocess.Popen(["ps", "ax"], stdout=subprocess.PIPE)
34 for x in s.stdout:
35 if re.search(process, x):
36 return True
37
29 def _set_config_value(self, service, key, value): 38 def _set_config_value(self, service, key, value):
30 config = configparser.ConfigParser() 39 config = configparser.ConfigParser()
31 40
@@ -116,11 +125,17 @@ class ReloadOnSighupTest(functional_base.FunctionalTestsBase):
116 # revert all the changes made 125 # revert all the changes made
117 self._change_config(service, new_workers, old_workers) 126 self._change_config(service, new_workers, old_workers)
118 127
128 def _reload_on_sighup(self, service):
129 if not self._is_mod_wsgi_daemon(service):
130 self._reload(service)
131 else:
132 self.skipTest('Skipping Test, Service running under httpd.')
133
119 def test_api_reload_on_sighup(self): 134 def test_api_reload_on_sighup(self):
120 self._reload('heat_api') 135 self._reload_on_sighup('heat_api')
121 136
122 def test_api_cfn_reload_on_sighup(self): 137 def test_api_cfn_reload_on_sighup(self):
123 self._reload('heat_api_cfn') 138 self._reload_on_sighup('heat_api_cfn')
124 139
125 def test_api_cloudwatch_on_sighup(self): 140 def test_api_cloudwatch_on_sighup(self):
126 self._reload('heat_api_cloudwatch') 141 self._reload_on_sighup('heat_api_cloudwatch')