Merge pull request #1387 from odoo-dev/master-disable-subcommand-discovery-fme
[FIX] Temporary disable addons subcommand auto discovery The problem with the current approach is that it imports all modules in order to discover which one exposes a subcommand by subclassing openerp.cli.Command. At that time, the arguments are not parsed in order to setup the config because a subcommand could potentialy alter the command line arguments (which is the case of start) This behavior causes the modules to be imported with the default config and all the modules using some config keys at startup won't have to value they are supposed to have when considering the shared command line switches. Long story short: $ odoo --workers=6 is ok, but $ odoo start --workers=6 is not for code that checks the config value at startup (eg: report module) As the automatic subcommands are not used yet, we temporary disable it until as proper solution is found.
This commit is contained in:
@@ -52,17 +52,14 @@ def main():
|
||||
# Default legacy command
|
||||
command = "server"
|
||||
|
||||
# TODO: find a way to properly discover addons subcommands without importing the world
|
||||
# Subcommand discovery
|
||||
if len(args) and not args[0].startswith("-"):
|
||||
logging.disable(logging.CRITICAL)
|
||||
for m in module.get_modules():
|
||||
m = 'openerp.addons.' + m
|
||||
__import__(m)
|
||||
#try:
|
||||
#except Exception, e:
|
||||
# raise
|
||||
# print e
|
||||
logging.disable(logging.NOTSET)
|
||||
# logging.disable(logging.CRITICAL)
|
||||
# for m in module.get_modules():
|
||||
# m = 'openerp.addons.' + m
|
||||
# __import__(m)
|
||||
# logging.disable(logging.NOTSET)
|
||||
command = args[0]
|
||||
args = args[1:]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user