mirror of
https://github.com/searxng/searxng.git
synced 2025-07-11 23:39:18 +02:00
This patch migrates from `redis==5.2.1` [1] to `valkey==6.1.0` [2]. The migration to valkey is necessary because the company behind Redis has decided to abandon the open source license. After experiencing a drop in user numbers, they now want to run it under a dual license again. But this move demonstrates once again how unreliable the company is and how it treats open source developers. To review first, read the docs:: $ make docs.live Follow the instructions to remove redis: - http://0.0.0.0:8000/admin/settings/settings_redis.html Config and install a local valkey DB: - http://0.0.0.0:8000/admin/settings/settings_valkey.html [1] https://pypi.org/project/redis/ [2] https://pypi.org/project/valkey/ Co-authored-by: HLFH <gaspard@dhautefeuille.eu> Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
44 lines
1.4 KiB
Python
44 lines
1.4 KiB
Python
# SPDX-License-Identifier: AGPL-3.0-or-later
|
|
"""Implement some checks in the active installation
|
|
"""
|
|
|
|
import os
|
|
import sys
|
|
import logging
|
|
import warnings
|
|
from pathlib import Path
|
|
|
|
repo_root = Path(__file__).resolve().parent.parent
|
|
|
|
LOG_FORMAT_DEBUG = '%(levelname)-7s %(name)-30.30s: %(message)s'
|
|
logging.basicConfig(level=logging.getLevelName('DEBUG'), format=LOG_FORMAT_DEBUG)
|
|
os.environ['SEARXNG_DEBUG'] = '1'
|
|
|
|
# from here on implement the checks of the installation
|
|
|
|
import searx
|
|
|
|
OLD_SETTING = '/etc/searx/settings.yml'
|
|
|
|
if os.path.isfile(OLD_SETTING):
|
|
msg = (
|
|
'%s is no longer valid, move setting to %s' % (
|
|
OLD_SETTING,
|
|
os.environ.get('SEARXNG_SETTINGS_PATH', '/etc/searxng/settings.yml')
|
|
))
|
|
warnings.warn(msg, DeprecationWarning)
|
|
|
|
OLD_BRAND_ENV = repo_root / 'utils' / 'brand.env'
|
|
|
|
if os.path.isfile(OLD_BRAND_ENV):
|
|
msg = ('%s is no longer needed, remove the file' % (OLD_BRAND_ENV))
|
|
warnings.warn(msg, DeprecationWarning)
|
|
|
|
from searx import valkeydb, get_setting
|
|
|
|
if get_setting('redis.url'):
|
|
warnings.warn("setting redis.url is deprecated, use valkey.url", RuntimeWarning, stacklevel=2)
|
|
|
|
if not valkeydb.initialize():
|
|
warnings.warn("can't connect to valkey DB at: %s" % get_setting('valkey.url'), RuntimeWarning, stacklevel=2)
|
|
warnings.warn("--> no bot protection without valkey DB", RuntimeWarning, stacklevel=2)
|