From bfb7120398b391538a65b0820792e2caa42b095e Mon Sep 17 00:00:00 2001 From: ievgenii vdovenko Date: Wed, 28 Jan 2026 12:23:56 +0100 Subject: [PATCH] feature: moves host/port/enable_feature into ini files --- configs/development.ini | 5 +++++ configs/production.ini | 5 +++++ rhodecode/apps/admin/update_service.py | 8 +++----- rhodecode/apps/admin/views/system_info.py | 8 +++++--- rhodecode/config/config_maker.py | 5 +++++ 5 files changed, 23 insertions(+), 8 deletions(-) diff --git a/configs/development.ini b/configs/development.ini index 7a367583..554dcbc6 100644 --- a/configs/development.ini +++ b/configs/development.ini @@ -878,6 +878,11 @@ ssh.enable_ui_key_generator = true ; Add any custom entries below. Please don't remove this marker. custom.conf = 1 +; update service +update_service.host=host.docker.internal +update_service.port=10025 +update_service.enabled=true + ; ##################### ; LOGGING CONFIGURATION diff --git a/configs/production.ini b/configs/production.ini index defb2512..c5c12504 100644 --- a/configs/production.ini +++ b/configs/production.ini @@ -839,6 +839,11 @@ ssh.enable_ui_key_generator = true ; Add any custom entries below. Please don't remove this marker. custom.conf = 1 +; update service +update_service.host=host.docker.internal +update_service.port=10025 +update_service.enabled=true + ; ##################### ; LOGGING CONFIGURATION diff --git a/rhodecode/apps/admin/update_service.py b/rhodecode/apps/admin/update_service.py index 8aee9cd0..e37a638c 100644 --- a/rhodecode/apps/admin/update_service.py +++ b/rhodecode/apps/admin/update_service.py @@ -1,23 +1,21 @@ import logging -import os import requests -from rhodecode.lib.type_utils import str2bool - class RcStackUpdateService: class State: READY = "ready" PROCESSING = "processing" - def __init__(self, server_host: str, server_port: int): + def __init__(self, server_host: str, server_port: int, feature_enabled=True): self.host = server_host self.port = server_port + self.enabled = feature_enabled self.log = logging.getLogger(__name__) def feature_available(self): - if str2bool(os.environ.get("DISABLE_RC_UPDATE_SERVICE", "false")) or self.host is None: + if not self.enabled or self.host is None: return False try: diff --git a/rhodecode/apps/admin/views/system_info.py b/rhodecode/apps/admin/views/system_info.py index 24102b9e..b48f9661 100644 --- a/rhodecode/apps/admin/views/system_info.py +++ b/rhodecode/apps/admin/views/system_info.py @@ -238,9 +238,11 @@ class AdminSystemInfoSettingsView(BaseAppView): return HTTPFound(h.route_path("admin_settings_system")) def _get_rc_update_service(self) -> RcStackUpdateService: - host = os.environ.get("RC_UPDATE_HOST", None) - port = os.environ.get("RC_UPDATE_PORT", 10025) - return RcStackUpdateService(server_host=host, server_port=port) + config = self.request.registry.settings + host = config.get("update_service.host") + port = config.get("update_service.port") + feature_enabled = config.get("update_service.enabled") + return RcStackUpdateService(server_host=host, server_port=port, feature_enabled=feature_enabled) @LoginRequired() @HasPermissionAllDecorator("hg.admin") diff --git a/rhodecode/config/config_maker.py b/rhodecode/config/config_maker.py index 70039db5..6e17225e 100644 --- a/rhodecode/config/config_maker.py +++ b/rhodecode/config/config_maker.py @@ -264,6 +264,11 @@ def sanitize_settings_and_apply_defaults(global_config, settings): settings_maker.make_setting("app.service_api.token", generate_token(), parser="string", write_default_to_ini=True) + # update service + settings_maker.make_setting("update_service.host", "host.docker.internal") + settings_maker.make_setting("update_service.port", 10025, parser="int") + settings_maker.make_setting("update_service.enabled", True, parser="bool") + settings_maker.env_expand() # configure instance id