[FIX] website_sale: fix boostrap row
[odoo/odoo.git] / openerpcommand / common.py
index bc3101c..f306d7f 100644 (file)
@@ -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):
     """
@@ -27,6 +42,8 @@ def get_addons_from_paths(paths, exclude):
         if os.path.exists(p):
             names = list(set(os.listdir(p)))
             names = filter(lambda a: not (a.startswith('.') or a in exclude), names)
+            names = filter(lambda a: os.path.isdir(os.path.join(p, a)), names)
+            names = filter(lambda a: os.path.exists(os.path.join(p, a, '__openerp__.py')), names)
             module_names.extend(names)
         else:
             print "The addons path `%s` doesn't exist." % p