# HG changeset patch # User Sylvain Thénault # Date 1297955300 -3600 # Node ID f45f422569051cf2e02632ef239d813b328dc9c6 # Parent 9e142116d82f8e4d92a30dc0398b34e2d955bc4b [config] we should load available configuration before search for an instance configuration diff -r 9e142116d82f -r f45f42256905 cwconfig.py --- a/cwconfig.py Thu Feb 17 16:08:19 2011 +0100 +++ b/cwconfig.py Thu Feb 17 16:08:20 2011 +0100 @@ -587,6 +587,14 @@ return # cubes dir doesn't exists @classmethod + def load_available_configs(cls): + from logilab.common.modutils import load_module_from_file + for conffile in ('web/webconfig.py', 'etwist/twconfig.py', + 'server/serverconfig.py',): + if exists(join(CW_SOFTWARE_ROOT, conffile)): + load_module_from_file(join(CW_SOFTWARE_ROOT, conffile)) + + @classmethod def load_cwctl_plugins(cls): from logilab.common.modutils import load_module_from_file cls.cls_adjust_sys_path() @@ -597,8 +605,8 @@ try: load_module_from_file(join(CW_SOFTWARE_ROOT, ctlfile)) except ImportError, err: - cls.info('could not import the command provider %s (cause : %s)' % - (ctlfile, err)) + cls.error('could not import the command provider %s: %s', + ctlfile, err) cls.info('loaded cubicweb-ctl plugin %s', ctlfile) for cube in cls.available_cubes(): oldpluginfile = join(cls.cube_dir(cube), 'ecplugin.py') @@ -895,6 +903,7 @@ def config_for(cls, appid, config=None, debugmode=False): """return a configuration instance for the given instance identifier """ + cls.load_available_configs() config = config or guess_configuration(cls.instance_home(appid)) configcls = configuration_cls(config) return configcls(appid, debugmode)