diff --git a/webhook/README.rst b/webhook/README.rst index 568b33e38..0c00e005e 100644 --- a/webhook/README.rst +++ b/webhook/README.rst @@ -6,7 +6,7 @@ Webhook ======= -Module to receive .. _global webhooks: https://en.wikipedia.org/wiki/Webhook events. +Module to receive `webhook `_ events. This module invoke methods to process webhook events. diff --git a/webhook/__openerp__.py b/webhook/__manifest__.py similarity index 91% rename from webhook/__openerp__.py rename to webhook/__manifest__.py index e8d324187..5180c5ed3 100644 --- a/webhook/__openerp__.py +++ b/webhook/__manifest__.py @@ -3,7 +3,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { 'name': 'Webhook', - 'version': '8.0.1.0.0', + 'version': '10.0.1.0.0', 'author': 'Vauxoo, Odoo Community Association (OCA)', 'category': 'Server Tools', 'website': 'https://www.vauxoo.com', @@ -20,7 +20,6 @@ 'data': [ 'security/ir.model.access.csv', 'views/webhook_views.xml', - 'data/webhook_data.xml', ], 'demo': [ 'demo/webhook_demo.xml', diff --git a/webhook/controllers/main.py b/webhook/controllers/main.py index 546130bad..75ea32d6e 100644 --- a/webhook/controllers/main.py +++ b/webhook/controllers/main.py @@ -4,10 +4,10 @@ import pprint -from openerp.addons.web import http -from openerp.http import request -from openerp import SUPERUSER_ID, exceptions -from openerp.tools.translate import _ +from odoo import http +from odoo.http import request +from odoo import exceptions +from odoo.tools.translate import _ class WebhookController(http.Controller): @@ -25,15 +25,11 @@ class WebhookController(http.Controller): # Deprecated by webhook_name dynamic name # webhook = webhook_registry.search_with_request( # cr, SUPERUSER_ID, request, context=context) - webhook = request.env['webhook'].with_env( - request.env(user=SUPERUSER_ID)).search( - [('name', '=', webhook_name)], limit=1) + webhook = request.env['webhook'].sudo().search( + [('name', '=', webhook_name)], limit=1) # TODO: Add security by secret string or/and ip consumer if not webhook: - remote_addr = '' - if hasattr(request, 'httprequest'): - if hasattr(request.httprequest, 'remote_addr'): - remote_addr = request.httprequest.remote_addr + remote_addr = getattr(request.httprequest, 'remote_addr', None) raise exceptions.ValidationError(_( 'webhook consumer [%s] from remote address [%s] ' 'not found jsonrequest [%s]' % ( diff --git a/webhook/data/webhook_data.xml b/webhook/data/webhook_data.xml deleted file mode 100644 index 4d7deef0d..000000000 --- a/webhook/data/webhook_data.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - github - request.httprequest.headers.get('X-Github-Event') - - - 192.30.252.0/22 - - - - - diff --git a/webhook/demo/webhook_demo.xml b/webhook/demo/webhook_demo.xml index f1e222483..c8a992973 100644 --- a/webhook/demo/webhook_demo.xml +++ b/webhook/demo/webhook_demo.xml @@ -1,6 +1,5 @@ - - + wehook_test @@ -13,5 +12,14 @@ - - + + + github + request.httprequest.headers.get('X-Github-Event') + + + 192.30.252.0/22 + + + + diff --git a/webhook/models/webhook.py b/webhook/models/webhook.py index c47aad59d..2d5639de5 100644 --- a/webhook/models/webhook.py +++ b/webhook/models/webhook.py @@ -5,9 +5,9 @@ import logging import traceback -from openerp import api, exceptions, fields, models, tools -from openerp.tools.safe_eval import safe_eval -from openerp.tools.translate import _ +from odoo import api, exceptions, fields, models, tools +from odoo.tools.safe_eval import safe_eval +from odoo.tools.translate import _ _logger = logging.getLogger(__name__) @@ -111,7 +111,7 @@ class Webhook(models.Model): :return: object of webhook found or if not found then return False """ - for webhook in self.search([('active', '=', True)]): + for webhook in self.search([]): remote_address = webhook.process_python_code( webhook.python_code_get_ip, request) if not remote_address: diff --git a/webhook/tests/test_webhook_post.py b/webhook/tests/test_webhook_post.py index c1adf30b7..ef80a7367 100644 --- a/webhook/tests/test_webhook_post.py +++ b/webhook/tests/test_webhook_post.py @@ -5,9 +5,9 @@ import json import requests -from openerp.tests.common import HttpCase -from openerp import api, exceptions, tools, models -from openerp.tools.translate import _ +from odoo.tests.common import HttpCase +from odoo import api, exceptions, tools, models +from odoo.tools.translate import _ HOST = '127.0.0.1' diff --git a/webhook/views/webhook_views.xml b/webhook/views/webhook_views.xml index 97e8699b5..87f68250e 100644 --- a/webhook/views/webhook_views.xml +++ b/webhook/views/webhook_views.xml @@ -1,6 +1,5 @@ - - + view.webhook.form @@ -40,5 +39,4 @@ - - +