跳至內容
選單
此問題已被標幟
6 回覆
8283 瀏覽次數

Hello, I have an Odoo server on odoo.sh and want to execute some pieces of code only when running there. Is there a way I can check, on a python method, if the server is running on production, locally, stagging, etc?

Thank you!

頭像
捨棄

May i know ,what is your purpose for doing this ?

作者

I my server I have, for example a method that makes a request to updates the invontory of our ecommerce. Something like:

def sync_inventory(self):

stock = function_that_get_the_current_stock()

update_ecommerce_stock(stock)

What I need I a way of doing something like:

def sync_inventory(self):

stock = function_that_get_the_current_stock()

if verify_if_server_is_on_production():

update_ecommerce_stock(stock)

Was I clear?

作者

Sorry about the bad indentation... I couln't tab and the spaces I input didn't work...

最佳答案

Following workround might be helpful to check if is "production" or "local":

def _check_environment_is_production(self):
web_base_url = self.env['ir.config_parameter'].sudo().get_param('web.base.url')
localhost_names = ['localhost']
return False if not web_base_url or any(x in web_base_url for x in localhost_names) else True
頭像
捨棄

Please note that when exporting a backup of production from odoo.sh, for me at least this test on my dev machine still returns TRUE. And unfortunately the parameter ODOO_STAGE suggeted by https://www.odoo.sh/faq doesn't exist by default.

最佳答案

Try this one

from openerp import api, models

_logger = logging.getLogger(__name__)

import xmlrpclib


class TestConnection(models.Model):

    _name = "test.connection"   


    @api.model

    def check_connection(self):        

        url = url

        db = db_name

        username = db_user

        password = db_password

        try:

            common = xmlrpclib.ServerProxy('{}/xmlrpc/2/common'.format(url))

            common.version()

            ### connection established, do your logic

        except:

            _logger.warning('*********Unable to connect the server ***********')

            ### connection Failed


頭像
捨棄
作者 最佳答案

Does anyone have an answer for this?

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
1
1月 24
15738
1
7月 25
383
0
6月 25
2
1
6月 23
15639
1
12月 22
5740