Skip to content

Commit 30bd2da

Browse files
committed
fix: add legacy-URL guard to all mirror consumers, remove dead _default_mirror_url
1 parent cfd953e commit 30bd2da

2 files changed

Lines changed: 14 additions & 15 deletions

File tree

apphub/src/services/app_manager.py

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2370,14 +2370,16 @@ def _replace_env_variables(self, text: str, env_helper: EnvHelper) -> str:
23702370
@retry(stop=stop_after_attempt(10), wait=wait_fixed(1))
23712371
def download_image_accelerators(self):
23722372
try:
2373+
from src.services.settings_manager import load_local_mirror_entries
23732374
configured = (ConfigManager("config.ini").get_value("docker_mirror", "url") or "").strip()
2374-
if configured:
2375-
return [
2376-
self._normalize_image_accelerator(item)
2377-
for item in configured.replace("\n", ",").split(",")
2378-
if item.strip()
2379-
]
2380-
return []
2375+
# Legacy URL — hasn't been bootstrapped yet, fall back to local.
2376+
if not configured or configured.startswith("http://") or configured.startswith("https://"):
2377+
return load_local_mirror_entries()
2378+
return [
2379+
self._normalize_image_accelerator(item)
2380+
for item in configured.replace("\n", ",").split(",")
2381+
if item.strip()
2382+
]
23812383
except Exception as e:
23822384
logger.error(f"Failed to download image accelerators: {e}")
23832385
return []

apphub/src/services/back_manager.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,6 @@
1111
from src.services.app_manager import AppManger
1212
from src.services.portainer_manager import PortainerManager
1313

14-
def _default_mirror_url() -> str:
15-
from src.services.settings_manager import _mirror_list_url
16-
return _mirror_list_url()
17-
18-
1914
RESTIC_CACHE_PATH = "/data/restic-cache"
2015

2116

@@ -30,11 +25,13 @@ def _normalize_mirror(value: str) -> str:
3025

3126
def _fetch_mirrors() -> List[str]:
3227
try:
28+
from src.services.settings_manager import load_local_mirror_entries
3329
config_manager = ConfigManager("config.ini")
3430
configured = (config_manager.get_value("docker_mirror", "url") or "").strip()
35-
if configured:
36-
return [_normalize_mirror(m) for m in configured.replace("\n", ",").split(",") if m.strip()]
37-
return []
31+
# Legacy URL — hasn't been bootstrapped yet, fall back to local.
32+
if not configured or configured.startswith("http://") or configured.startswith("https://"):
33+
return load_local_mirror_entries()
34+
return [_normalize_mirror(m) for m in configured.replace("\n", ",").split(",") if m.strip()]
3835
except Exception as e:
3936
logger.error(f"Failed to load mirrors: {e}")
4037
return []

0 commit comments

Comments
 (0)