Update documentation of server_environment, bump
This commit is contained in:
parent
398b324b03
commit
107ca7da9d
|
|
@ -3,17 +3,20 @@
|
||||||
:alt: License: GPL-3
|
:alt: License: GPL-3
|
||||||
|
|
||||||
==================
|
==================
|
||||||
server environment
|
Server Environment
|
||||||
==================
|
==================
|
||||||
|
|
||||||
This module provides a way to define an environment in the main Odoo
|
This module provides a way to define an environment in the main Odoo
|
||||||
configuration file and to read some configurations from files
|
configuration file and to read some configurations from files
|
||||||
depending on the configured environment: you define the environment in
|
depending on the configured environment: you define the environment in
|
||||||
the main configuration file, and the values for the various possible
|
the main configuration file, and the values for the various possible
|
||||||
environments are stored in the `server_environment_files` companion
|
environments are stored in the ``server_environment_files`` companion
|
||||||
module.
|
module.
|
||||||
|
|
||||||
All the settings will be read only and visible under the Configuration
|
The ``server_environment_files`` module is optional, the values can be set using
|
||||||
|
an environment variable with a fallback on default values in the database.
|
||||||
|
|
||||||
|
The configuration read from the files are visible under the Configuration
|
||||||
menu. If you are not in the 'dev' environment you will not be able to
|
menu. If you are not in the 'dev' environment you will not be able to
|
||||||
see the values contained in keys named '*passw*'.
|
see the values contained in keys named '*passw*'.
|
||||||
|
|
||||||
|
|
@ -21,14 +24,14 @@ Installation
|
||||||
============
|
============
|
||||||
|
|
||||||
By itself, this module does little. See for instance the
|
By itself, this module does little. See for instance the
|
||||||
`mail_environment` addon which depends on this one to allow configuring
|
``mail_environment`` addon which depends on this one to allow configuring
|
||||||
the incoming and outgoing mail servers depending on the environment.
|
the incoming and outgoing mail servers depending on the environment.
|
||||||
|
|
||||||
To install this module, you need to provide a companion module called
|
You can store your configuration values in a companion module called
|
||||||
`server_environment_files`. You can copy and customize the provided
|
``server_environment_files``. You can copy and customize the provided
|
||||||
`server_environment_files_sample` module for this purpose.
|
``server_environment_files_sample`` module for this purpose. Alternatively, you
|
||||||
You can provide additional options in environment variables
|
can provide them in environment variable ``SERVER_ENV_CONFIG`` and
|
||||||
``SERVER_ENV_CONFIG`` and ``SERVER_ENV_CONFIG_SECRET``.
|
``SERVER_ENV_CONFIG_SECRET``.
|
||||||
|
|
||||||
|
|
||||||
Configuration
|
Configuration
|
||||||
|
|
@ -65,7 +68,7 @@ Environment variable
|
||||||
You can define configuration in the environment variable ``SERVER_ENV_CONFIG``
|
You can define configuration in the environment variable ``SERVER_ENV_CONFIG``
|
||||||
and/or ``SERVER_ENV_CONFIG_SECRET``. The 2 variables are handled the exact same
|
and/or ``SERVER_ENV_CONFIG_SECRET``. The 2 variables are handled the exact same
|
||||||
way, this is only a convenience for the deployment where you can isolate the
|
way, this is only a convenience for the deployment where you can isolate the
|
||||||
secrets in a different, encrypted, file. This is a multi-line environment variable
|
secrets in a different, encrypted, file. They are multi-line environment variables
|
||||||
in the same configparser format than the files.
|
in the same configparser format than the files.
|
||||||
If you used options in ``server_environment_files``, the options set in the
|
If you used options in ``server_environment_files``, the options set in the
|
||||||
environment variable overrides them.
|
environment variable overrides them.
|
||||||
|
|
@ -75,7 +78,6 @@ the content of the variable must be set accordingly to the running environment.
|
||||||
|
|
||||||
Example of setup:
|
Example of setup:
|
||||||
|
|
||||||
|
|
||||||
A public file, containing that will contain public variables::
|
A public file, containing that will contain public variables::
|
||||||
|
|
||||||
# These variables are not odoo standard variables,
|
# These variables are not odoo standard variables,
|
||||||
|
|
@ -106,17 +108,43 @@ A second file which is encrypted and contains secrets::
|
||||||
sftp_password=xxxxxxxxx
|
sftp_password=xxxxxxxxx
|
||||||
"
|
"
|
||||||
|
|
||||||
|
Default values
|
||||||
|
--------------
|
||||||
|
|
||||||
|
When using the ``server.env.mixin`` mixin, for each env-computed field, a
|
||||||
|
companion field ``<field>_env_default`` is created. This field is not
|
||||||
|
environment-dependent. It's a fallback value used when no key is set in
|
||||||
|
configuration files / environment variable.
|
||||||
|
|
||||||
|
When the default field is used, the field is made editable on Odoo.
|
||||||
|
|
||||||
|
Note: a present key with an empty value do not fallback on the default field.
|
||||||
|
|
||||||
|
Keychain integration
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
Read the documentation of the class `models/server_env_mixin.py
|
||||||
|
<models/server_env_mixin.py>`_.
|
||||||
|
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
=====
|
=====
|
||||||
|
|
||||||
To use this module, in your code, you can follow this example::
|
You can include a mixin in your model and configure the env-computed fields
|
||||||
|
by an override of ``_server_env_fields``.
|
||||||
|
|
||||||
from openerp.addons.server_environment import serv_config
|
::
|
||||||
for key, value in serv_config.items('external_service.ftp'):
|
|
||||||
print (key, value)
|
|
||||||
|
|
||||||
serv_config.get('external_service.ftp', 'tls')
|
class StorageBackend(models.Model):
|
||||||
|
_name = "storage.backend"
|
||||||
|
_inherit = ["storage.backend", "server.env.mixin"]
|
||||||
|
|
||||||
|
@property
|
||||||
|
def _server_env_fields(self):
|
||||||
|
return {"directory_path": {'getter': 'get'}}
|
||||||
|
|
||||||
|
Read the documentation of the class and methods in `models/server_env_mixin.py
|
||||||
|
<models/server_env_mixin.py>`__.
|
||||||
|
|
||||||
|
|
||||||
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
|
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "server configuration environment files",
|
"name": "server configuration environment files",
|
||||||
|
"version": "11.0.1.2.0",
|
||||||
"depends": [
|
"depends": [
|
||||||
"base",
|
"base",
|
||||||
"base_sparse_field",
|
"base_sparse_field",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue