[IMP] oe web/cron: slight refactor.
bzr revid: vmt@openerp.com-20130118121619-be5n01rieac11oru
This commit is contained in:
parent
f6e2a1314c
commit
24878795fe
|
@ -16,6 +16,21 @@ def add_addons_argument(parser):
|
|||
parser.add_argument('--addons', metavar='ADDONS',
|
||||
**required_or_default('ADDONS',
|
||||
'colon-separated list of paths to addons'))
|
||||
def set_addons(args):
|
||||
"""
|
||||
Turn args.addons into a list instead of a column-separated strings.
|
||||
Set openerp.toools.config accordingly.
|
||||
"""
|
||||
import openerp.tools.config
|
||||
config = openerp.tools.config
|
||||
|
||||
assert hasattr(args, 'addons')
|
||||
if args.addons:
|
||||
args.addons = args.addons.split(':')
|
||||
else:
|
||||
args.addons = []
|
||||
|
||||
config['addons_path'] = ','.join(args.addons)
|
||||
|
||||
def get_addons_from_paths(paths, exclude):
|
||||
"""
|
||||
|
|
|
@ -6,18 +6,6 @@ import os
|
|||
|
||||
import common
|
||||
|
||||
def set_addons(args):
|
||||
import openerp.tools.config
|
||||
config = openerp.tools.config
|
||||
|
||||
assert hasattr(args, 'addons')
|
||||
if args.addons:
|
||||
args.addons = args.addons.split(':')
|
||||
else:
|
||||
args.addons = []
|
||||
|
||||
config['addons_path'] = ','.join(args.addons)
|
||||
|
||||
def run(args):
|
||||
import openerp
|
||||
import openerp.cli.server
|
||||
|
@ -26,7 +14,7 @@ def run(args):
|
|||
config = openerp.tools.config
|
||||
|
||||
os.environ["TZ"] = "UTC"
|
||||
set_addons(args)
|
||||
common.set_addons(args)
|
||||
args.database = args.database or []
|
||||
|
||||
config['log_handler'] = [':WARNING', 'openerp.addons.base.ir.ir_cron:DEBUG']
|
||||
|
@ -54,6 +42,6 @@ def add_parser(subparsers):
|
|||
description='Run an OpenERP cron process.')
|
||||
common.add_addons_argument(parser)
|
||||
parser.add_argument('--database', action='append',
|
||||
help='Database for which cron jobs are processed (can be given repeated)')
|
||||
help='Database for which cron jobs are processed (can be repeated)')
|
||||
|
||||
parser.set_defaults(run=run)
|
||||
|
|
|
@ -6,24 +6,21 @@ import logging
|
|||
import os
|
||||
import threading
|
||||
|
||||
import openerp.cli.server
|
||||
import openerp.service.wsgi_server
|
||||
import openerp.tools.config
|
||||
|
||||
import common
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
def run(args):
|
||||
os.environ["TZ"] = "UTC"
|
||||
|
||||
if args.addons:
|
||||
args.addons = args.addons.split(':')
|
||||
else:
|
||||
args.addons = []
|
||||
|
||||
import openerp.cli.server
|
||||
import openerp.service.wsgi_server
|
||||
import openerp.tools.config
|
||||
config = openerp.tools.config
|
||||
config['addons_path'] = ','.join(args.addons)
|
||||
|
||||
os.environ["TZ"] = "UTC"
|
||||
common.set_addons(args)
|
||||
|
||||
openerp.multi_process = True
|
||||
common.setproctitle('openerp-web')
|
||||
|
||||
openerp.cli.server.check_root_user()
|
||||
openerp.netsvc.init_logger()
|
||||
|
@ -33,6 +30,9 @@ def run(args):
|
|||
|
||||
target = openerp.service.wsgi_server.serve
|
||||
if not args.gevent:
|
||||
# TODO openerp.multi_process with a multi-threaded process probably
|
||||
# doesn't work very well (e.g. waiting for all threads to complete
|
||||
# before killing the process is not implemented).
|
||||
arg = (args.interface, int(args.port), args.threaded)
|
||||
threading.Thread(target=target, args=arg).start()
|
||||
openerp.cli.server.quit_on_signals()
|
||||
|
|
Loading…
Reference in New Issue