misc: don't follow redirects when checking service status (#30052)

This commit is contained in:
Frédéric Péters 2019-01-24 10:24:20 +01:00
parent 4f374db177
commit c6d4361d84
1 changed files with 4 additions and 4 deletions

View File

@ -87,7 +87,7 @@ class ServiceBase(models.Model):
self.last_operational_check_timestamp = once_now
try:
zone = self.get_admin_zones()[0]
response = requests.get(zone.href, timeout=10)
response = requests.get(zone.href, timeout=10, allow_redirects=False)
response.raise_for_status()
self.last_operational_success_timestamp = once_now
except requests.RequestException as e:
@ -182,7 +182,7 @@ class ServiceBase(models.Model):
if not self.is_resolvable():
return False
try:
requests.get(self.base_url, verify=True)
requests.get(self.base_url, verify=True, allow_redirects=False)
return True
except requests.exceptions.SSLError:
return False
@ -192,8 +192,8 @@ class ServiceBase(models.Model):
def is_running(self):
if not self.is_resolvable():
return False
r = requests.get(self.get_admin_zones()[0].href, verify=False)
return bool(r.status_code is 200)
r = requests.get(self.get_admin_zones()[0].href, verify=False, allow_redirects=False)
return (r.status_code >= 200 and r.status_code < 400)
def get_health_dict(self):
properties = [