feature: moves host/port/enable_feature into ini files

This commit is contained in:
ievgenii vdovenko 2026-01-28 12:23:56 +01:00
parent 144e4a8ab1
commit bfb7120398
5 changed files with 23 additions and 8 deletions

View file

@ -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

View file

@ -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

View file

@ -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:

View file

@ -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")

View file

@ -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