summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/fetch2
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2016-11-16 09:11:03 +1300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-11-23 10:59:56 +0000
commit4d8ee55164303544c9cf9c9356448cbc79885815 (patch)
tree5d8ad47d3ed23dbb3f481c7a4a4f17a98d904b78 /bitbake/lib/bb/fetch2
parent3ef7cf5297804a22ab01a8eaaacfbab12fddb9d8 (diff)
downloadpoky-4d8ee55164303544c9cf9c9356448cbc79885815.tar.gz
bitbake: fetch2: npm: conditionally hide NPM_LOCKDOWN / NPM_SHRINKWRAP warnings
If ud.ignore_checksums is set (which we currently use to suppress the warnings for missing SRC_URI checksums when fetching files from scripts), then if we're fetching an npm package we should similarly suppress the warnings when NPM_LOCKDOWN and NPM_SHRINKWRAP aren't set. At the same time, make any errors reading either of these files actual errors since if the file is specified and could not be found, that should be an error - not the exact same warning. Fixes [YOCTO #10464]. (Bitbake rev: cefb8c93c8299e68352cf7ec5ad9ca50c0d499ed) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/fetch2')
-rw-r--r--bitbake/lib/bb/fetch2/npm.py22
1 files changed, 14 insertions, 8 deletions
diff --git a/bitbake/lib/bb/fetch2/npm.py b/bitbake/lib/bb/fetch2/npm.py
index 699ae72e05..c3e02e47f0 100644
--- a/bitbake/lib/bb/fetch2/npm.py
+++ b/bitbake/lib/bb/fetch2/npm.py
@@ -258,17 +258,23 @@ class Npm(FetchMethod):
258 258
259 shwrf = d.getVar('NPM_SHRINKWRAP', True) 259 shwrf = d.getVar('NPM_SHRINKWRAP', True)
260 logger.debug(2, "NPM shrinkwrap file is %s" % shwrf) 260 logger.debug(2, "NPM shrinkwrap file is %s" % shwrf)
261 try: 261 if shwrf:
262 with open(shwrf) as datafile: 262 try:
263 shrinkobj = json.load(datafile) 263 with open(shwrf) as datafile:
264 except: 264 shrinkobj = json.load(datafile)
265 except Exception as e:
266 raise FetchError('Error loading NPM_SHRINKWRAP file "%s" for %s: %s' % (shwrf, ud.pkgname, str(e)))
267 elif not ud.ignore_checksums:
265 logger.warning('Missing shrinkwrap file in NPM_SHRINKWRAP for %s, this will lead to unreliable builds!' % ud.pkgname) 268 logger.warning('Missing shrinkwrap file in NPM_SHRINKWRAP for %s, this will lead to unreliable builds!' % ud.pkgname)
266 lckdf = d.getVar('NPM_LOCKDOWN', True) 269 lckdf = d.getVar('NPM_LOCKDOWN', True)
267 logger.debug(2, "NPM lockdown file is %s" % lckdf) 270 logger.debug(2, "NPM lockdown file is %s" % lckdf)
268 try: 271 if lckdf:
269 with open(lckdf) as datafile: 272 try:
270 lockdown = json.load(datafile) 273 with open(lckdf) as datafile:
271 except: 274 lockdown = json.load(datafile)
275 except Exception as e:
276 raise FetchError('Error loading NPM_LOCKDOWN file "%s" for %s: %s' % (lckdf, ud.pkgname, str(e)))
277 elif not ud.ignore_checksums:
272 logger.warning('Missing lockdown file in NPM_LOCKDOWN for %s, this will lead to unreproducible builds!' % ud.pkgname) 278 logger.warning('Missing lockdown file in NPM_LOCKDOWN for %s, this will lead to unreproducible builds!' % ud.pkgname)
273 279
274 if ('name' not in shrinkobj): 280 if ('name' not in shrinkobj):