Switch health to use a data interface
This commit is contained in:
parent
ca5a47edad
commit
4853634c2f
3 changed files with 22 additions and 3 deletions
12
health/models_interface.py
Normal file
12
health/models_interface.py
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
from abc import ABCMeta, abstractmethod
|
||||||
|
from six import add_metaclass
|
||||||
|
|
||||||
|
@add_metaclass(ABCMeta)
|
||||||
|
class HealthCheckDataInterface(object):
|
||||||
|
"""
|
||||||
|
Interface that represents all data store interactions required by health checks.
|
||||||
|
"""
|
||||||
|
@abstractmethod
|
||||||
|
def check_health(self, app_config):
|
||||||
|
""" Returns True if the connection to the database is healthy and False otherwise. """
|
||||||
|
pass
|
8
health/models_pre_oci.py
Normal file
8
health/models_pre_oci.py
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
from data.model import health
|
||||||
|
from health.models_interface import HealthCheckDataInterface
|
||||||
|
|
||||||
|
class PreOCIModel(HealthCheckDataInterface):
|
||||||
|
def check_health(self, app_config):
|
||||||
|
return health.check_health(app_config)
|
||||||
|
|
||||||
|
pre_oci_model = PreOCIModel()
|
|
@ -1,6 +1,6 @@
|
||||||
import logging
|
import logging
|
||||||
from data.model import health
|
|
||||||
from app import build_logs, storage
|
from app import build_logs, storage
|
||||||
|
from health.models_pre_oci import pre_oci_model as model
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
@ -27,10 +27,9 @@ def _check_registry_gunicorn(app):
|
||||||
logger.exception('Exception when checking registry health: %s', registry_url)
|
logger.exception('Exception when checking registry health: %s', registry_url)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def _check_database(app):
|
def _check_database(app):
|
||||||
""" Returns the status of the database, as accessed from this instance. """
|
""" Returns the status of the database, as accessed from this instance. """
|
||||||
return health.check_health(app.config)
|
return model.check_health(app.config)
|
||||||
|
|
||||||
def _check_redis(app):
|
def _check_redis(app):
|
||||||
""" Returns the status of Redis, as accessed from this instance. """
|
""" Returns the status of Redis, as accessed from this instance. """
|
||||||
|
|
Reference in a new issue