Skip to content

Commit 4d04b5a

Browse files
authored
Fix compatibility with pre-3.18 custom check backends (#414)
The `subset` parameter added to `BaseHealthCheckBackend`'s `run_check` and `check_status` methods in 4da1fd9 broke compatibility with existing custom check backends, since they don't accept this parameter. Moreover, this parameter appears to be entirely useless, since `check_status` is only called by `run_check`, and `run_check` is only called by `CheckMixin.run_check`, which never passed a value for `subset`. Get rid of it and restore compatibility.
1 parent 78d08eb commit 4d04b5a

File tree

14 files changed

+36
-36
lines changed

14 files changed

+36
-36
lines changed

health_check/backends.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@ class BaseHealthCheckBackend:
2020
def __init__(self):
2121
self.errors = []
2222

23-
def check_status(self, subset=None):
23+
def check_status(self):
2424
raise NotImplementedError
2525

26-
def run_check(self, subset=None):
26+
def run_check(self):
2727
start = timer()
2828
self.errors = []
2929
try:
30-
self.check_status(subset=subset)
30+
self.check_status()
3131
except HealthCheckException as e:
3232
self.add_error(e, e)
3333
except BaseException:

health_check/cache/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def __init__(self, backend="default"):
2828
def identifier(self):
2929
return f"Cache backend: {self.backend}"
3030

31-
def check_status(self, subset=None):
31+
def check_status(self):
3232
cache = caches[self.backend]
3333

3434
try:

health_check/contrib/celery/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
class CeleryHealthCheck(BaseHealthCheckBackend):
11-
def check_status(self, subset=None):
11+
def check_status(self):
1212
timeout = getattr(settings, "HEALTHCHECK_CELERY_TIMEOUT", 3)
1313
result_timeout = getattr(settings, "HEALTHCHECK_CELERY_RESULT_TIMEOUT", timeout)
1414
queue_timeout = getattr(settings, "HEALTHCHECK_CELERY_QUEUE_TIMEOUT", timeout)

health_check/contrib/celery_ping/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
class CeleryPingHealthCheck(BaseHealthCheckBackend):
99
CORRECT_PING_RESPONSE = {"ok": "pong"}
1010

11-
def check_status(self, subset=None):
11+
def check_status(self):
1212
timeout = getattr(settings, "HEALTHCHECK_CELERY_PING_TIMEOUT", 1)
1313

1414
try:

health_check/contrib/migrations/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class MigrationsHealthCheck(BaseHealthCheckBackend):
1414
def get_migration_plan(self, executor):
1515
return executor.migration_plan(executor.loader.graph.leaf_nodes())
1616

17-
def check_status(self, subset=None):
17+
def check_status(self):
1818
db_alias = getattr(settings, "HEALTHCHECK_MIGRATIONS_DB", DEFAULT_DB_ALIAS)
1919
try:
2020
executor = MigrationExecutor(connections[db_alias])

health_check/contrib/psutil/backends.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515

1616
class DiskUsage(BaseHealthCheckBackend):
17-
def check_status(self, subset=None):
17+
def check_status(self):
1818
try:
1919
du = psutil.disk_usage("/")
2020
if DISK_USAGE_MAX and du.percent >= DISK_USAGE_MAX:
@@ -28,7 +28,7 @@ def check_status(self, subset=None):
2828

2929

3030
class MemoryUsage(BaseHealthCheckBackend):
31-
def check_status(self, subset=None):
31+
def check_status(self):
3232
try:
3333
memory = psutil.virtual_memory()
3434
if MEMORY_MIN and memory.available < (MEMORY_MIN * 1024 * 1024):

health_check/contrib/rabbitmq/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class RabbitMQHealthCheck(BaseHealthCheckBackend):
1515

1616
namespace = None
1717

18-
def check_status(self, subset=None):
18+
def check_status(self):
1919
"""Check RabbitMQ service by opening and closing a broker channel."""
2020
logger.debug("Checking for a broker_url on django settings...")
2121

health_check/contrib/redis/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class RedisHealthCheck(BaseHealthCheckBackend):
1414

1515
redis_url = getattr(settings, "REDIS_URL", "redis://localhost/1")
1616

17-
def check_status(self, subset=None):
17+
def check_status(self):
1818
"""Check Redis service by pinging the redis instance with a redis connection."""
1919
logger.debug("Got %s as the redis_url. Connecting to redis...", self.redis_url)
2020

health_check/db/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88

99
class DatabaseBackend(BaseHealthCheckBackend):
10-
def check_status(self, subset=None):
10+
def check_status(self):
1111
try:
1212
obj = TestModel.objects.create(title="test")
1313
obj.title = "newtest"

health_check/storage/backends.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ def check_delete(self, file_name):
6767
if storage.exists(file_name):
6868
raise ServiceUnavailable("File was not deleted")
6969

70-
def check_status(self, subset=None):
70+
def check_status(self):
7171
try:
7272
# write the file to the storage backend
7373
file_name = self.get_file_name()

0 commit comments

Comments
 (0)