From b17b2050df953427769ab6a337c6995ac2a60615 Mon Sep 17 00:00:00 2001 From: Alexander Haase Date: Thu, 25 Jul 2024 14:19:55 +0200 Subject: [PATCH] Use queue 'low' for system jobs by default System jobs usually perform low-priority background tasks and therefore can use a different queue than 'default', which is used for regular jobs related to specific objects. --- docs/plugins/development/background-tasks.md | 3 +++ netbox/netbox/settings.py | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/plugins/development/background-tasks.md b/docs/plugins/development/background-tasks.md index df56acfb6..b5afd48af 100644 --- a/docs/plugins/development/background-tasks.md +++ b/docs/plugins/development/background-tasks.md @@ -50,6 +50,9 @@ A system background job is not bound to any particular NetBox object. A typical The `setup()` method can be used to set up a new scheduled job outside the request-response cycle. It can be safely called from the plugin's ready function and will register the new schedule right after all plugins are loaded and the database is connected. +!!! note + The default system background job queue is `low`. It can be changed using the [`QUEUE_MAPPINGS`](../../configuration/miscellaneous.md#queue_mappings) setting when using `None` as model. + #### Example ```python title="jobs.py" diff --git a/netbox/netbox/settings.py b/netbox/netbox/settings.py index 64fb24f09..34aae1e69 100644 --- a/netbox/netbox/settings.py +++ b/netbox/netbox/settings.py @@ -124,7 +124,9 @@ MEDIA_ROOT = getattr(configuration, 'MEDIA_ROOT', os.path.join(BASE_DIR, 'media' METRICS_ENABLED = getattr(configuration, 'METRICS_ENABLED', False) PLUGINS = getattr(configuration, 'PLUGINS', []) PLUGINS_CONFIG = getattr(configuration, 'PLUGINS_CONFIG', {}) -QUEUE_MAPPINGS = getattr(configuration, 'QUEUE_MAPPINGS', {}) +QUEUE_MAPPINGS = getattr(configuration, 'QUEUE_MAPPINGS', { + None: 'low', +}) REDIS = getattr(configuration, 'REDIS') # Required RELEASE_CHECK_URL = getattr(configuration, 'RELEASE_CHECK_URL', None) REMOTE_AUTH_AUTO_CREATE_GROUPS = getattr(configuration, 'REMOTE_AUTH_AUTO_CREATE_GROUPS', False)