From dfad54683949ac55e5f4e1793d11fa22b0f2a213 Mon Sep 17 00:00:00 2001 From: jsanchez Date: Mon, 18 Oct 2021 13:33:42 +0200 Subject: [PATCH] [MIG] server_environment: migration to 15.0 --- server_environment/__manifest__.py | 2 +- server_environment/models/server_env_mixin.py | 1 + server_environment/server_env.py | 14 +++++++++----- server_environment/tests/common.py | 2 +- .../tests/test_server_environment.py | 4 +++- .../odoo/addons/server_environment | 1 + setup/server_environment/setup.py | 6 ++++++ 7 files changed, 22 insertions(+), 8 deletions(-) create mode 120000 setup/server_environment/odoo/addons/server_environment create mode 100644 setup/server_environment/setup.py diff --git a/server_environment/__manifest__.py b/server_environment/__manifest__.py index 334e087..7f1336e 100644 --- a/server_environment/__manifest__.py +++ b/server_environment/__manifest__.py @@ -4,7 +4,7 @@ { "name": "server configuration environment files", - "version": "14.0.1.0.0", + "version": "15.0.1.0.0", "depends": ["base", "base_sparse_field"], "author": "Camptocamp,Odoo Community Association (OCA)", "summary": "move some configurations out of the database", diff --git a/server_environment/models/server_env_mixin.py b/server_environment/models/server_env_mixin.py index 112e675..1463ae3 100644 --- a/server_environment/models/server_env_mixin.py +++ b/server_environment/models/server_env_mixin.py @@ -393,3 +393,4 @@ class ServerEnvMixin(models.AbstractModel): self._server_env_add_default_field(field) self._server_env_transform_field_to_read_from_env(field) self._server_env_add_is_editable_field(field) + return diff --git a/server_environment/server_env.py b/server_environment/server_env.py index d291609..a2a7206 100644 --- a/server_environment/server_env.py +++ b/server_environment/server_env.py @@ -111,7 +111,9 @@ def _load_config_from_server_env_files(config_p): try: config_p.read(conf_files) except Exception as e: - raise Exception('Cannot read config files "{}": {}'.format(conf_files, e)) + raise Exception( + 'Cannot read config files "{}": {}'.format(conf_files, e) + ) from e def _load_config_from_rcfile(config_p): @@ -128,7 +130,7 @@ def _load_config_from_env(config_p): except configparser.Error as err: raise Exception( "{} content could not be parsed: {}".format(varname, err) - ) + ) from err def _load_config(): @@ -213,7 +215,7 @@ class ServerConfiguration(models.TransientModel): @classmethod def _get_base_cols(cls): - """ Compute base fields""" + """Compute base fields""" res = {} for col, item in list(system_base_config.options.items()): key = cls._format_key("odoo", col) @@ -222,7 +224,7 @@ class ServerConfiguration(models.TransientModel): @classmethod def _get_env_cols(cls, sections=None): - """ Compute base fields""" + """Compute base fields""" res = {} sections = sections if sections else serv_config.sections() for section in sections: @@ -233,7 +235,7 @@ class ServerConfiguration(models.TransientModel): @classmethod def _get_system_cols(cls): - """ Compute system fields""" + """Compute system fields""" res = {} for col, item in get_server_environment(): key = cls._format_key("system", col) @@ -316,6 +318,8 @@ class ServerConfiguration(models.TransientModel): ): return res for key in self._conf_defaults: + if key not in fields_list: + continue if not self.show_passwords and self._is_secret(key=key): res[key] = "**********" else: diff --git a/server_environment/tests/common.py b/server_environment/tests/common.py index 7e13ac0..798895e 100644 --- a/server_environment/tests/common.py +++ b/server_environment/tests/common.py @@ -11,7 +11,7 @@ import odoo.addons.server_environment.models.server_env_mixin as server_env_mixi from odoo.addons.server_environment import server_env -class ServerEnvironmentCase(common.SavepointCase): +class ServerEnvironmentCase(common.TransactionCase): @contextmanager def set_config_dir(self, path): original_dir = server_env._dir diff --git a/server_environment/tests/test_server_environment.py b/server_environment/tests/test_server_environment.py index 0abc84a..2dc4fa1 100644 --- a/server_environment/tests/test_server_environment.py +++ b/server_environment/tests/test_server_environment.py @@ -18,7 +18,9 @@ class TestEnv(common.ServerEnvironmentCase): def _test_default(self, hidden_pwd=False): model = self.env["server.config"] rec = model.create({}) - defaults = rec.default_get([]) + fields = model.fields_view_get()["fields"] + self.assertTrue(fields) + defaults = rec.default_get(list(fields)) self.assertTrue(defaults) self.assertIsInstance(defaults, dict) pass_checked = False diff --git a/setup/server_environment/odoo/addons/server_environment b/setup/server_environment/odoo/addons/server_environment new file mode 120000 index 0000000..13248f5 --- /dev/null +++ b/setup/server_environment/odoo/addons/server_environment @@ -0,0 +1 @@ +../../../../server_environment \ No newline at end of file diff --git a/setup/server_environment/setup.py b/setup/server_environment/setup.py new file mode 100644 index 0000000..28c57bb --- /dev/null +++ b/setup/server_environment/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)