Skip to main content

move some configurations out of the database

Project description

License: GPL-3

server environment

This module provides a way to define an environment in the main Odoo configuration file and to read some configurations from files depending on the configured environment: you define the environment in the main configuration file, and the values for the various possible environments are stored in the server_environment_files companion module.

All the settings will be read only and visible under the Configuration menu. If you are not in the ‘dev’ environment you will not be able to see the values contained in the defined secret keys (by default : ‘passw’, ‘key’, ‘secret’ and ‘token’).


By itself, this module does little. See for instance the mail_environment addon which depends on this one to allow configuring the incoming and outgoing mail servers depending on the environment.

To install this module, you need to provide a companion module called server_environment_files. You can copy and customize the provided server_environment_files_sample module for this purpose.


To configure this module, you need to edit the main configuration file of your instance, and add a directive called running_env. Commonly used values are ‘dev’, ‘test’, ‘production’:


You should then 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 default/ directory using the .ini file syntax;
  • each environment you need to define is stored in its own directory and can override or extend default values;
  • finally, you can override or extend values in the main configuration file of you instance.

Values associated to keys containing ‘passw’ are only displayed in the ‘dev’ environment.


To use this module, in your code, you can follow this example:

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')
Try me on Runbot

Known issues / Roadmap

  • it is not possible to set the environment from the command line. A configuration file must be used.
  • the module does not allow to set low level attributes such as database server, etc.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.



  • Odoo Community Association: Icon.



Odoo Community Association

This module is maintained by the OCA.

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

To contribute to this module, please visit

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for odoo10-addon-server-environment, version
Filename, size File type Python version Upload date Hashes
Filename, size odoo10_addon_server_environment- (150.9 kB) File type Wheel Python version py2 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page