diff --git a/backend/config/__init__.py b/backend/config/__init__.py index acd5a830d..abe30fcbb 100644 --- a/backend/config/__init__.py +++ b/backend/config/__init__.py @@ -37,6 +37,7 @@ DB_PASSWD: Final = os.environ.get("DB_PASSWD") DB_NAME: Final = os.environ.get("DB_NAME", "romm") # REDIS +ENABLE_EXPERIMENTAL_REDIS: Final = os.environ.get("ENABLE_EXPERIMENTAL_REDIS", "false") == "true" REDIS_HOST: Final = os.environ.get("REDIS_HOST", "localhost") REDIS_PORT: Final = os.environ.get("REDIS_PORT", "6379") diff --git a/backend/endpoints/scan.py b/backend/endpoints/scan.py index 920ea92c7..bd00c6561 100644 --- a/backend/endpoints/scan.py +++ b/backend/endpoints/scan.py @@ -3,6 +3,7 @@ import socketio # type: ignore from rq import Queue from logger.logger import log +from config import ENABLE_EXPERIMENTAL_REDIS from utils import fs, fastapi from exceptions.fs_exceptions import PlatformsNotFoundException, RomsNotFoundException from handler import dbh @@ -88,7 +89,7 @@ async def scan_handler(_sid: str, options: dict): selected_roms = options.get("roms", []) # Run in worker if redis is available - if redis_connectable: + if redis_connectable and ENABLE_EXPERIMENTAL_REDIS: return scan_queue.enqueue( scan_platforms, platform_slugs, complete_rescan, selected_roms ) diff --git a/backend/worker.py b/backend/worker.py index 5fc4b08c2..a7c6f5a56 100755 --- a/backend/worker.py +++ b/backend/worker.py @@ -1,13 +1,14 @@ import sys from rq import Worker, Queue, Connection +from config import ENABLE_EXPERIMENTAL_REDIS from utils.cache import redis_client, redis_connectable listen = ["high", "default", "low"] if __name__ == "__main__": # Exit if Redis is not connectable - if not redis_connectable: + if not redis_connectable or not ENABLE_EXPERIMENTAL_REDIS: sys.exit(0) with Connection(redis_client): diff --git a/docker-compose.yml b/docker-compose.yml index cf156cea9..fadac7b25 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,9 +12,9 @@ services: ports: - $DB_PORT:3306 - # redis: - # image: redis:alpine - # container_name: redis - # restart: unless-stopped - # ports: - # - ${REDIS_PORT}:6379 + redis: + image: redis:alpine + container_name: redis + restart: unless-stopped + ports: + - ${REDIS_PORT}:6379 diff --git a/docker/build_local_image.sh b/docker/build_local_image.sh index fb96ec6d4..01febc767 100755 --- a/docker/build_local_image.sh +++ b/docker/build_local_image.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION=$(cat .romm-version) +VERSION="2.0.0" branch_name="$(git symbolic-ref HEAD 2>/dev/null)" branch_name=${branch_name##refs/heads/} docker build -t zurdi15/romm:local-${VERSION}-${branch_name} . --file ./docker/Dockerfile diff --git a/docker/init_scripts/init_worker b/docker/init_scripts/init_worker index 478b86426..837d050ca 100755 --- a/docker/init_scripts/init_worker +++ b/docker/init_scripts/init_worker @@ -1,4 +1,4 @@ #!/bin/bash cd /back -nc -z ${REDIS_HOST:-localhost} ${REDIS_PORT:-6379} && rq worker high default low --logging_level WARN +[[ -z ${ENABLE_EXPERIMENTAL_REDIS} ]] && rq worker high default low --logging_level WARN