server_environment: running_env default to `test` (fix #44)

This commit is contained in:
Simone Orsi 2020-04-01 12:15:57 +02:00 committed by Alexey Pelykh
parent f207835db7
commit c3f2b6f5c0
4 changed files with 30 additions and 9 deletions

View File

@ -8,6 +8,8 @@ used values are 'dev', 'test', 'production'::
Values associated to keys containing 'passw' are only displayed in the 'dev'
environment.
If you don't provide any value, `test` is used as a safe default.
You have several possibilities to set configuration values:
server_environment_files

View File

@ -45,14 +45,19 @@ ENV_VAR_NAMES = ('SERVER_ENV_CONFIG', 'SERVER_ENV_CONFIG_SECRET')
_boolean_states = {'1': True, 'yes': True, 'true': True, 'on': True,
'0': False, 'no': False, 'false': False, 'off': False}
if not system_base_config.get('running_env', False):
raise Exception(
"The parameter 'running_env' has not be set neither in base config "
"file option -c or in openerprc.\n"
"We strongly recommend against using the rc file but instead use an "
"explicit config file with this content:\n"
"[options]\nrunning_env = dev"
)
def _load_running_env():
if not system_base_config.get("running_env"):
_logger.warning("`running_env` not found. Using default = `test`.")
_logger.warning(
"We strongly recommend against using the rc file but instead use an "
"explicit config file or env variable."
)
# safe default
system_base_config["running_env"] = "test"
_load_running_env()
ck_path = None
if _dir:

View File

@ -15,10 +15,14 @@ import odoo.addons.server_environment.models.server_env_mixin as \
class ServerEnvironmentCase(common.SavepointCase):
_test_case_running_env = "testing"
def setUp(self):
super().setUp()
self._original_running_env = config.get('running_env')
config['running_env'] = 'testing'
if self._test_case_running_env is not None:
config['running_env'] = self._test_case_running_env
server_env._load_running_env()
def tearDown(self):
super().tearDown()

View File

@ -2,6 +2,8 @@
# License GPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo.tools.config import config
from odoo.addons.server_environment import server_env
from .common import ServerEnvironmentCase
@ -43,3 +45,11 @@ class TestEnvironmentVariables(ServerEnvironmentCase):
parser = server_env._load_config()
val = parser.get('external_service.ftp', 'user')
self.assertEqual(val, 'foo')
class TestRunningEnv(ServerEnvironmentCase):
_test_case_running_env = '' # empty -> no env set
def test_running_env_default(self):
self.assertEqual(config['running_env'], 'test')