[TEST] Log for debug
[odoo/odoo.git] / openerpcommand / common.py
index 45c2742..7572bb4 100644 (file)
@@ -40,8 +40,9 @@ def get_addons_from_paths(paths, exclude):
     module_names = []
     for p in paths:
         if os.path.exists(p):
-            names = list(set(os.listdir(p)))
-            names = filter(lambda a: not (a.startswith('.') or a in exclude), names)
+            names = [n for n in os.listdir(p) if os.path.isfile(os.path.join(p, n, '__openerp__.py')) and not n.startswith('.') and n not in exclude]
+            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
@@ -56,11 +57,11 @@ def required_or_default(name, h):
     a mandatory argument.
     """
     if os.environ.get('OPENERP_' + name.upper()):
-       d = {'default': os.environ['OPENERP_' + name.upper()]}
+        d = {'default': os.environ['OPENERP_' + name.upper()]}
     else:
-       d = {'required': True}
+        d = {'required': True}
     d['help'] = h + '. The environment variable OPENERP_' + \
-       name.upper() + ' can be used instead.'
+                name.upper() + ' can be used instead.'
     return d
 
 class Command(object):
@@ -76,7 +77,7 @@ class Command(object):
             self.parser = parser = subparsers.add_parser(self.command_name,
                description=self.__class__.__doc__)
         else:
-           self.parser = parser = argparse.ArgumentParser(
+            self.parser = parser = argparse.ArgumentParser(
                 description=self.__class__.__doc__)
 
         parser.add_argument('-d', '--database', metavar='DATABASE',