Patchwork [3/3] oeqa/utils: targetbuild: don't use bb.fetch anymore

login
register
mail settings
Submitter Stanacar, StefanX
Date Feb. 3, 2014, 7:22 p.m.
Message ID <ec9a0948f200b6ee5b20ebfa0fc62d0efc0b969e.1391454072.git.stefanx.stanacar@intel.com>
Download mbox | patch
Permalink /patch/66271/
State Accepted
Commit d7c0e00e40c3eadb139a663bdfef15b2d2cb1408
Headers show

Comments

Stanacar, StefanX - Feb. 3, 2014, 7:22 p.m.
When running tests outside of the build system we can't use
bb.fetch anymore. It was nice but tests and their modules
need to rely on the data storage only as that gets exported.
This module is used by the oeqa/runtime/build* tests.

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
---
 meta/lib/oeqa/utils/targetbuild.py | 27 ++++++++-------------------
 1 file changed, 8 insertions(+), 19 deletions(-)

Patch

diff --git a/meta/lib/oeqa/utils/targetbuild.py b/meta/lib/oeqa/utils/targetbuild.py
index 9b2cf53..77181b1 100644
--- a/meta/lib/oeqa/utils/targetbuild.py
+++ b/meta/lib/oeqa/utils/targetbuild.py
@@ -4,11 +4,9 @@ 
 
 # Provides a class for automating build tests for projects
 
-from oeqa.oetest import oeRuntimeTest
-import bb.fetch2
-import bb.data
 import os
 import re
+import subprocess
 
 
 class TargetBuildProject():
@@ -16,26 +14,16 @@  class TargetBuildProject():
     def __init__(self, target, uri, foldername=None):
         self.target = target
         self.uri = uri
-        self.targetdir = "/home/root/"
-
-        self.localdata = bb.data.createCopy(oeRuntimeTest.tc.d)
-        bb.data.update_data(self.localdata)
-
-        if not foldername:
-            self.archive = os.path.basename(uri)
-            self.fname = re.sub(r'.tar.bz2|tar.gz$', '', self.archive)
-        else:
+        self.targetdir = "~/"
+        self.archive = os.path.basename(uri)
+        self.localarchive = "/tmp/" + self.archive
+        self.fname = re.sub(r'.tar.bz2|tar.gz$', '', self.archive)
+        if foldername:
             self.fname = foldername
 
     def download_archive(self):
 
-        try:
-            self.localdata.delVar("BB_STRICT_CHECKSUM")
-            fetcher = bb.fetch2.Fetch([self.uri], self.localdata)
-            fetcher.download()
-            self.localarchive = fetcher.localpath(self.uri)
-        except bb.fetch2.BBFetchException:
-            raise Exception("Failed to download archive: %s" % self.uri)
+        subprocess.check_call("wget -O %s %s" % (self.localarchive, self.uri), shell=True)
 
         (status, output) = self.target.copy_to(self.localarchive, self.targetdir)
         if status != 0:
@@ -61,3 +49,4 @@  class TargetBuildProject():
 
     def clean(self):
         self.target.run('rm -rf %s' % self.targetdir)
+        subprocess.call('rm -f %s' % self.localarchive, shell=True)