bitbake: fetch: fix handling of files with incorrect checksums from a premirror
Ensure that when an item fetched from a premirror has an invalid checksum the fetcher falls back to the usual logic of trying the upstream and any configured mirrors. (Bitbake rev: cc52b9b12c60810142252b9cb5d4268e42371b8e) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
9074fb46bc
commit
18341b9dc9
|
@ -1619,6 +1619,15 @@ class Fetch(object):
|
||||||
logger.debug(1, "Trying PREMIRRORS")
|
logger.debug(1, "Trying PREMIRRORS")
|
||||||
mirrors = mirror_from_string(self.d.getVar('PREMIRRORS'))
|
mirrors = mirror_from_string(self.d.getVar('PREMIRRORS'))
|
||||||
localpath = try_mirrors(self, self.d, ud, mirrors, False)
|
localpath = try_mirrors(self, self.d, ud, mirrors, False)
|
||||||
|
if localpath:
|
||||||
|
try:
|
||||||
|
# early checksum verification so that if the checksum of the premirror
|
||||||
|
# contents mismatch the fetcher can still try upstream and mirrors
|
||||||
|
update_stamp(ud, self.d)
|
||||||
|
except ChecksumError as e:
|
||||||
|
logger.warning("Checksum failure encountered with premirror download of %s - will attempt other sources." % u)
|
||||||
|
logger.debug(1, str(e))
|
||||||
|
localpath = ""
|
||||||
|
|
||||||
if premirroronly:
|
if premirroronly:
|
||||||
self.d.setVar("BB_NO_NETWORK", "1")
|
self.d.setVar("BB_NO_NETWORK", "1")
|
||||||
|
|
Loading…
Reference in New Issue