Browse Source

[MIG] migrate dbfilter_from_header to 10.0 (#571)

[MIG] migrate dbfilter_from_header to 10.0

I have also removed the ability to use HTTP_X_OPENERP_DBFILTER
pull/1182/head
Jos De Graeve 8 years ago
committed by Ivan Yelizariev
parent
commit
4dd95bd47b
No known key found for this signature in database GPG Key ID: B87954F73B65AC8A
  1. 35
      dbfilter_from_header/README.rst
  2. 9
      dbfilter_from_header/__init__.py
  3. 4
      dbfilter_from_header/__manifest__.py

35
dbfilter_from_header/README.rst

@ -10,15 +10,35 @@ This addon lets you pass a dbfilter as a HTTP header.
This is interesting for setups where database names can't be mapped to proxied host names. This is interesting for setups where database names can't be mapped to proxied host names.
Installation
============
To install this module, you only need to add it to your addons, and load it as
a server-wide module.
This can be done with the ``load`` parameter in ``/etc/odoo.conf`` or with the
``--load`` command-line parameter
``load = "web, web_kanban, dbfilter_from_header"``
Configuration Configuration
============= =============
In nginx, use one of:
Please keep in mind that the standard odoo dbfilter configuration is still
applied before looking at the regular expression in the header.
* For nginx, use:
``proxy_set_header X-Odoo-dbfilter [your filter regex];``
* For caddy, use:
``proxy_header X-Odoo-dbfilter [your filter regex]``
* For Apache, use:
* proxy_set_header X-OpenERP-dbfilter [your filter];
* proxy_set_header X-Odoo-dbfilter [your filter];
``RequestHeader set X-Odoo-dbfilter [your filter regex]``
This addon has to be loaded as server-wide module.
Bug Tracker Bug Tracker
=========== ===========
@ -26,11 +46,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues Bugs are tracked on `GitHub Issues
<https://github.com/OCA/server-tools/issues>`_. In case of trouble, please <https://github.com/OCA/server-tools/issues>`_. In case of trouble, please
check there if your issue has already been reported. If you spotted it first, 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
<https://github.com/OCA/
server-tools/issues/new?body=module:%20
dbfilter_from_header%0Aversion:%20
9.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
help us smashing it by providing a detailed and welcomed feedback.
Credits Credits
======= =======
@ -45,6 +61,7 @@ Contributors
* Laurent Mignon (aka lmi) <laurent.mignon@acsone.eu> * Laurent Mignon (aka lmi) <laurent.mignon@acsone.eu>
* Sandy Carter <sandy.carter@savoirfairelinux.com> * Sandy Carter <sandy.carter@savoirfairelinux.com>
* Fabio Vilchez <fabio.vilchez@clearcorp.co.cr> * Fabio Vilchez <fabio.vilchez@clearcorp.co.cr>
* Jos De Graeve <Jos.DeGraeve@apertoso.be>
Maintainer Maintainer
---------- ----------

9
dbfilter_from_header/__init__.py

@ -4,7 +4,7 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
import re import re
from openerp import http
from odoo import http
db_filter_org = http.db_filter db_filter_org = http.db_filter
@ -12,12 +12,7 @@ db_filter_org = http.db_filter
def db_filter(dbs, httprequest=None): def db_filter(dbs, httprequest=None):
dbs = db_filter_org(dbs, httprequest) dbs = db_filter_org(dbs, httprequest)
httprequest = httprequest or http.request.httprequest httprequest = httprequest or http.request.httprequest
db_filter_hdr_odoo = httprequest.environ.get('HTTP_X_ODOO_DBFILTER')
db_filter_hdr_openerp = httprequest.environ.get('HTTP_X_OPENERP_DBFILTER')
if db_filter_hdr_odoo and db_filter_hdr_openerp:
raise RuntimeError("x-odoo-dbfilter and x-openerp-dbfiter "
"are both set")
db_filter_hdr = db_filter_hdr_odoo or db_filter_hdr_openerp
db_filter_hdr = httprequest.environ.get('HTTP_X_ODOO_DBFILTER')
if db_filter_hdr: if db_filter_hdr:
dbs = [db for db in dbs if re.match(db_filter_hdr, db)] dbs = [db for db in dbs if re.match(db_filter_hdr, db)]
return dbs return dbs

4
dbfilter_from_header/__manifest__.py

@ -6,7 +6,7 @@
{ {
"name": "dbfilter_from_header", "name": "dbfilter_from_header",
"summary": "Filter databases with HTTP headers", "summary": "Filter databases with HTTP headers",
"version": "9.0.1.0.0",
"version": "10.0.1.0.0",
"author": "Therp BV,Odoo Community Association (OCA)", "author": "Therp BV,Odoo Community Association (OCA)",
"license": "AGPL-3", "license": "AGPL-3",
"complexity": "normal", "complexity": "normal",
@ -21,7 +21,7 @@
"css": [ "css": [
], ],
"auto_install": False, "auto_install": False,
'installable': False,
'installable': True,
"external_dependencies": { "external_dependencies": {
'python': [], 'python': [],
}, },

Loading…
Cancel
Save