Improve documentation regarding variables

This commit is contained in:
Guewen Baconnier 2018-07-23 11:56:50 +02:00 committed by Stéphane Bidoul (ACSONE)
parent d52e93a743
commit 471514ca4f
No known key found for this signature in database
GPG Key ID: BCAB2555446B5B92
1 changed files with 58 additions and 11 deletions

View File

@ -35,29 +35,76 @@ Configuration
============= =============
To configure this module, you need to edit the main configuration file To configure this module, you need to edit the main configuration file
of your instance, and add a directive called `running_env`. Commonly of your instance, and add a directive called ``running_env``. Commonly
used values are 'dev', 'test', 'production':: used values are 'dev', 'test', 'production'::
[options] [options]
running_env=dev running_env=dev
You should then edit the settings you need in the Values associated to keys containing 'passw' are only displayed in the 'dev'
`server_environment_files` addon. The environment.
`server_environment_files_sample` can be used as an example:
You have several possibilities to set configuration values:
server_environment_files
------------------------
You can edit the settings you need in the ``server_environment_files`` addon. The
``server_environment_files_sample`` can be used as an example:
* values common to all / most environments can be stored in the * values common to all / most environments can be stored in the
`default/` directory using the .ini file syntax; ``default/`` directory using the .ini file syntax;
* each environment you need to define is stored in its own directory * each environment you need to define is stored in its own directory
and can override or extend default values; and can override or extend default values;
* you can override or extend values in the main configuration * you can override or extend values in the main configuration
file of your instance; file of your instance;
* additional configuration can be passed in the environment variable
``SERVER_ENV_CONFIG`` and/or ``SERVER_ENV_CONFIG_SECRET``, overriding any
values set in the configuration files. This is a multi-line environment
variable in the same configparser format than the files.
Values associated to keys Environment variable
containing 'passw' are only displayed in the 'dev' environment. --------------------
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
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
in the same configparser format than the files.
If you used options in ``server_environment_files``, the options set in the
environment variable overrides them.
The options in the environment variable are not dependent of ``running_env``,
the content of the variable must be set accordingly to the running environment.
Example of setup:
A public file, containing that will contain public variables::
# These variables are not odoo standard variables,
# they are there to represent what your file could look like
export WORKERS='8'
export MAX_CRON_THREADS='1'
export LOG_LEVEL=info
export LOG_HANDLER=":INFO"
export DB_MAXCONN=5
# server environment options
export SERVER_ENV_CONFIG="
[storage_backend.my-sftp]
sftp_server=10.10.10.10
sftp_login=foo
sftp_port=22200
directory_path=Odoo
"
A second file which is encrypted and contains secrets::
# This variable is not an odoo standard variable,
# it is there to represent what your file could look like
export DB_PASSWORD='xxxxxxxxx'
# server environment options
export SERVER_ENV_CONFIG_SECRET="
[storage_backend.my-sftp]
sftp_password=xxxxxxxxx
"
Usage Usage
===== =====