From b2d29335738b36a1b30bba3296ebbdfb9255621c Mon Sep 17 00:00:00 2001 From: Alexandre Fayolle Date: Thu, 21 Jan 2016 22:30:02 +0100 Subject: [PATCH] 9.0 migration of server_environment --- server_environment/README.rst | 125 +++++++++++++++++++++++++++++ server_environment/__openerp__.py | 59 +------------- server_environment/serv_config.xml | 2 +- 3 files changed, 130 insertions(+), 56 deletions(-) create mode 100644 server_environment/README.rst diff --git a/server_environment/README.rst b/server_environment/README.rst new file mode 100644 index 0000000..f44eca3 --- /dev/null +++ b/server_environment/README.rst @@ -0,0 +1,125 @@ +.. image:: https://img.shields.io/badge/licence-GPL--3-blue.svg + :target: http://www.gnu.org/licenses/gpl-3.0-standalone.html + :alt: 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 keys named '*passw*'. + +Installation +============ + +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. + + +Configuration +============= + +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':: + + [options] + running_env=dev + +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. Values associated to keys + containing 'passw' are only displayed in the 'dev' environment. + +Usage +===== + +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') + + + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/149/9.0 + + +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 +`_. + +Credits +======= + +Images +------ + +* Odoo Community Association: `Icon `_. + +Contributors +------------ + +* Alexandre Fayolle +* Daniel Reis +* Florent Xicluna +* Guewen Baconnier +* Holger Brunn +* Joël Grand-Guillaume +* Nicolas Bessi +* Wingo +* Yannick Vaucher + + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +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 https://odoo-community.org. diff --git a/server_environment/__openerp__.py b/server_environment/__openerp__.py index 65a2ecb..6ceed35 100644 --- a/server_environment/__openerp__.py +++ b/server_environment/__openerp__.py @@ -21,67 +21,16 @@ { "name": "server configuration environment files", - "version": "8.0.1.1.0", + "version": "9.0.1.1.0", "depends": ["base", "server_environment_files"], "author": "Camptocamp,Odoo Community Association (OCA)", - "description": """\ -Environment file pattern for OpenERP -==================================== - -This module provides a classical configuration by environnement file -pattern into OpenERP. Based on code written by WinGo and Camptocamp. - -This module allows you to use the classical environment file pattern -by reading a directive call `running_env` in the OpenERP configuration -file:: - - [options] - running_env=dev / prod / etc. - -We intended to add a server command line but there is no correct way -to do it. - -This method allows you to keep your settings into a module instead of -using config files that might be mixed with openerprc or altered. It -is an alternative way to the base config file for such configuration -needs . All your configurations will be read only and accessible -under the admin menu. If you are not in the 'dev' environment you -will not be able to see the values contained in keys named 'passw'. - -At the current time, the module does not allow to set low level -attributes such as database server, etc. . - -The first goal of the module is to ensure that OpenERP will never mess -up the external system. Once installed, profile is mandatory. We do -not want to launch an instance in the dev environment on a production -server. - -The configuration files are stored in the `server_environment_files` -module, and user config parser module syntax. Look at the module to -get some examples. The `default` configuration are stored in the -`default/` directory. You can add one directory for each environment -you want to define, named after the environment. All config defined in -non-default environments will override or complement the default -config. If your attibutes contain `passw`, it will only be shown in -the `dev` environment. - -Example usage -------------- - -:: - - from 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') - """, - "website": "http://www.camptocamp.com", + "summary": "move some configurations out of the database", + "website": "http://odoo-community.org/", "license": "GPL-3 or any later version", "category": "Tools", "data": [ 'serv_config.xml', ], - 'installable': False, + 'installable': True, "active": False, } diff --git a/server_environment/serv_config.xml b/server_environment/serv_config.xml index 7227b67..ac9f91f 100644 --- a/server_environment/serv_config.xml +++ b/server_environment/serv_config.xml @@ -9,7 +9,7 @@ view_mode="form"/>