[MIG] server_environment: migration to 15.0

This commit is contained in:
jsanchez 2021-10-18 13:33:42 +02:00 committed by Simone Orsi
parent 03012cfd41
commit dfad546839
7 changed files with 22 additions and 8 deletions

View File

@ -4,7 +4,7 @@
{ {
"name": "server configuration environment files", "name": "server configuration environment files",
"version": "14.0.1.0.0", "version": "15.0.1.0.0",
"depends": ["base", "base_sparse_field"], "depends": ["base", "base_sparse_field"],
"author": "Camptocamp,Odoo Community Association (OCA)", "author": "Camptocamp,Odoo Community Association (OCA)",
"summary": "move some configurations out of the database", "summary": "move some configurations out of the database",

View File

@ -393,3 +393,4 @@ class ServerEnvMixin(models.AbstractModel):
self._server_env_add_default_field(field) self._server_env_add_default_field(field)
self._server_env_transform_field_to_read_from_env(field) self._server_env_transform_field_to_read_from_env(field)
self._server_env_add_is_editable_field(field) self._server_env_add_is_editable_field(field)
return

View File

@ -111,7 +111,9 @@ def _load_config_from_server_env_files(config_p):
try: try:
config_p.read(conf_files) config_p.read(conf_files)
except Exception as e: 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): def _load_config_from_rcfile(config_p):
@ -128,7 +130,7 @@ def _load_config_from_env(config_p):
except configparser.Error as err: except configparser.Error as err:
raise Exception( raise Exception(
"{} content could not be parsed: {}".format(varname, err) "{} content could not be parsed: {}".format(varname, err)
) ) from err
def _load_config(): def _load_config():
@ -213,7 +215,7 @@ class ServerConfiguration(models.TransientModel):
@classmethod @classmethod
def _get_base_cols(cls): def _get_base_cols(cls):
""" Compute base fields""" """Compute base fields"""
res = {} res = {}
for col, item in list(system_base_config.options.items()): for col, item in list(system_base_config.options.items()):
key = cls._format_key("odoo", col) key = cls._format_key("odoo", col)
@ -222,7 +224,7 @@ class ServerConfiguration(models.TransientModel):
@classmethod @classmethod
def _get_env_cols(cls, sections=None): def _get_env_cols(cls, sections=None):
""" Compute base fields""" """Compute base fields"""
res = {} res = {}
sections = sections if sections else serv_config.sections() sections = sections if sections else serv_config.sections()
for section in sections: for section in sections:
@ -233,7 +235,7 @@ class ServerConfiguration(models.TransientModel):
@classmethod @classmethod
def _get_system_cols(cls): def _get_system_cols(cls):
""" Compute system fields""" """Compute system fields"""
res = {} res = {}
for col, item in get_server_environment(): for col, item in get_server_environment():
key = cls._format_key("system", col) key = cls._format_key("system", col)
@ -316,6 +318,8 @@ class ServerConfiguration(models.TransientModel):
): ):
return res return res
for key in self._conf_defaults: for key in self._conf_defaults:
if key not in fields_list:
continue
if not self.show_passwords and self._is_secret(key=key): if not self.show_passwords and self._is_secret(key=key):
res[key] = "**********" res[key] = "**********"
else: else:

View File

@ -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 from odoo.addons.server_environment import server_env
class ServerEnvironmentCase(common.SavepointCase): class ServerEnvironmentCase(common.TransactionCase):
@contextmanager @contextmanager
def set_config_dir(self, path): def set_config_dir(self, path):
original_dir = server_env._dir original_dir = server_env._dir

View File

@ -18,7 +18,9 @@ class TestEnv(common.ServerEnvironmentCase):
def _test_default(self, hidden_pwd=False): def _test_default(self, hidden_pwd=False):
model = self.env["server.config"] model = self.env["server.config"]
rec = model.create({}) 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.assertTrue(defaults)
self.assertIsInstance(defaults, dict) self.assertIsInstance(defaults, dict)
pass_checked = False pass_checked = False

View File

@ -0,0 +1 @@
../../../../server_environment

View File

@ -0,0 +1,6 @@
import setuptools
setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)