From f3349d4b3d8a3b88cc4f1236676e735a5ca5a383 Mon Sep 17 00:00:00 2001 From: Tagadda <36127788+Tagadda@users.noreply.github.com> Date: Sun, 30 Jan 2022 23:35:32 +0000 Subject: [PATCH] settings migration wip --- .../0024_global_settings_to_configpanel.py | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/migrations/0024_global_settings_to_configpanel.py diff --git a/src/migrations/0024_global_settings_to_configpanel.py b/src/migrations/0024_global_settings_to_configpanel.py new file mode 100644 index 000000000..b165b75b9 --- /dev/null +++ b/src/migrations/0024_global_settings_to_configpanel.py @@ -0,0 +1,32 @@ +import subprocess +import time + +from yunohost.utils.error import YunohostError +from moulinette.utils.log import getActionLogger + +from yunohost.tools import Migration +from yunohost.utils.legacy import LEGACY_SETTINGS, translate_legacy_settings_to_configpanel_settings +from yunohost.settings import settings_set + +logger = getActionLogger("yunohost.migration") + +SETTINGS_PATH = "/etc/yunohost/settings.json" + +class MyMigration(Migration): + + "Migrate old global settings to the new ConfigPanel global settings" + + dependencies = ["migrate_to_bullseye"] + + def run(self): + if not os.path.exists(SETTINGS_PATH): + return + + try: + old_settings = json.load(open(SETTINGS_PATH)) + except Exception as e: + raise YunohostError("global_settings_cant_open_settings", reason=e) + + for key, value in old_settings.items(): + if key in LEGACY_SETTINGS: + settings_set(key=key, value=value)