feat(system): add staged release updates

This commit is contained in:
jxxghp
2026-08-24 17:58:03 +08:00
parent 5415398027
commit 84326e20de
23 changed files with 1393 additions and 350 deletions
+21 -1
View File
@@ -15,7 +15,7 @@ import psutil
import pytest
from app.runtime.state import SystemHelper
from app.runtime.config import ConfigModel, settings
from app.runtime.config import ConfigModel, Settings, settings
from app.adapters.system.host import SystemUtils
@@ -523,6 +523,26 @@ def test_btrfs_fsid_dedup_setting_is_opt_in():
assert ConfigModel(BTRFS_FSID_DEDUP="true").BTRFS_FSID_DEDUP is True
def test_legacy_release_auto_update_mode_is_disabled(monkeypatch):
"""历史 Release 启动更新值迁移为关闭,Dev 值继续保留。"""
updates = []
monkeypatch.setattr(
Settings,
"update_env_config",
lambda field, original, converted: updates.append(
(field, original, converted)
),
)
assert Settings(MOVIEPILOT_AUTO_UPDATE="release").MOVIEPILOT_AUTO_UPDATE == "false"
assert Settings(MOVIEPILOT_AUTO_UPDATE="true").MOVIEPILOT_AUTO_UPDATE == "false"
assert Settings(MOVIEPILOT_AUTO_UPDATE="dev").MOVIEPILOT_AUTO_UPDATE == "dev"
assert updates == [
("MOVIEPILOT_AUTO_UPDATE", "release", "false"),
("MOVIEPILOT_AUTO_UPDATE", "true", "false"),
]
def test_space_usage_default_path_does_not_read_fsid():
with tempfile.TemporaryDirectory() as tmp1, tempfile.TemporaryDirectory() as tmp2:
paths = [Path(tmp1), Path(tmp2)]