[OE-core] [PATCH 1/2] oe-selftest: optimize code in _sstatetests_noauto.py module

Corneliu Stoicescu corneliux.stoicescu at intel.com
Thu Mar 6 16:35:55 UTC 2014


1) Some of the checks made when creating new directories are unnecessary beacause
the test will fail anyway if os.mkdir() fails, with the appropriate error message.

Removing this code.

2) Moved the adding to tracked paths for deletion of temporary build directories
and sstate-cache directories to after they are created. This makes more sense
and prevents deletion of these directories if they allready exist and may contain
useful data.

Signed-off-by: Corneliu Stoicescu <corneliux.stoicescu at intel.com>
---
 meta/lib/oeqa/selftest/_sstatetests_noauto.py | 19 ++++---------------
 1 file changed, 4 insertions(+), 15 deletions(-)

diff --git a/meta/lib/oeqa/selftest/_sstatetests_noauto.py b/meta/lib/oeqa/selftest/_sstatetests_noauto.py
index 5253334..97366d9 100644
--- a/meta/lib/oeqa/selftest/_sstatetests_noauto.py
+++ b/meta/lib/oeqa/selftest/_sstatetests_noauto.py
@@ -24,23 +24,15 @@ class RebuildFromSState(SStateBase):
         return found_targets
 
     def configure_builddir(self, builddir):
-        if os.path.exists(builddir):
-            raise AssertionError("Cannot create build directory at %s: Path allready exists!" % builddir)
-        try:
-            os.mkdir(builddir)
-        except:
-            raise AssertionError("Cannot create %s . Make sure %s exists!" % (dst, os.path.dirname(dst)))
+        os.mkdir(builddir)
+        self.track_for_cleanup(builddir)
         os.mkdir(os.path.join(builddir, 'conf'))
         shutil.copyfile(os.path.join(os.environ.get('BUILDDIR'), 'conf/local.conf'), os.path.join(builddir, 'conf/local.conf'))
         shutil.copyfile(os.path.join(os.environ.get('BUILDDIR'), 'conf/bblayers.conf'), os.path.join(builddir, 'conf/bblayers.conf'))
 
     def hardlink_tree(self, src, dst):
-        if os.path.exists(dst):
-            raise AssertionError("Cannot create directory at %s: Path allready exists!" % dst)
-        try:
-            os.mkdir(dst)
-        except:
-            raise AssertionError("Cannot create %s . Make sure %s exists!" % (dst, os.path.dirname(dst)))
+        os.mkdir(dst)
+        self.track_for_cleanup(dst)
         for root, dirs, files in os.walk(src):
             if root == src:
                 continue
@@ -54,9 +46,6 @@ class RebuildFromSState(SStateBase):
             buildB = os.path.join(self.builddir, 'buildB')
         else:
             buildB = buildA
-        self.track_for_cleanup(buildA)
-        self.track_for_cleanup(buildB)
-        self.track_for_cleanup(os.path.join(self.builddir, 'sstate-cache-buildA'))
 
         if rebuild_dependencies:
             rebuild_targets = self.get_dep_targets(primary_targets)
-- 
1.8.3.2




More information about the Openembedded-core mailing list