aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/lib/recipetool/create.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/lib/recipetool/create.py')
-rw-r--r--scripts/lib/recipetool/create.py21
1 files changed, 6 insertions, 15 deletions
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 923c336849..2b7cc76ccb 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -478,20 +478,11 @@ def create_recipe(args):
bb.process.run('git submodule update --init --recursive', cwd=srctree)
if is_package(fetchuri):
- tmpfdir = tempfile.mkdtemp(prefix='recipetool-')
- try:
- pkgfile = None
+ localdata = bb.data.createCopy(tinfoil.config_data)
+ pkgfile = bb.fetch2.localpath(fetchuri, localdata)
+ if pkgfile:
+ tmpfdir = tempfile.mkdtemp(prefix='recipetool-')
try:
- fileuri = fetchuri + ';unpack=0'
- scriptutils.fetch_uri(tinfoil.config_data, fileuri, tmpfdir, srcrev)
- for root, _, files in os.walk(tmpfdir):
- for f in files:
- pkgfile = os.path.join(root, f)
- break
- except bb.fetch2.BBFetchException as e:
- logger.warn('Second fetch to get metadata failed: %s' % str(e).rstrip())
-
- if pkgfile:
if pkgfile.endswith(('.deb', '.ipk')):
stdout, _ = bb.process.run('ar x %s' % pkgfile, cwd=tmpfdir)
stdout, _ = bb.process.run('tar xf control.tar.gz', cwd=tmpfdir)
@@ -501,8 +492,8 @@ def create_recipe(args):
stdout, _ = bb.process.run('rpm -qp --xml %s > pkginfo.xml' % pkgfile, cwd=tmpfdir)
values = convert_rpm_xml(os.path.join(tmpfdir, 'pkginfo.xml'))
extravalues.update(values)
- finally:
- shutil.rmtree(tmpfdir)
+ finally:
+ shutil.rmtree(tmpfdir)
else:
# Assume we're pointing to an existing source tree
if args.extract_to: