From 69b4614ff3cfe6f92e3271062aed06cc01151299 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 28 Feb 2014 17:26:20 +0000 Subject: bitbake: fetch/wget: Separate out download and checkstatus functions These two functions have little in common, separate them out. (Bitbake rev: 7413e0fa4dca9571ea98f32dab87d4fd60bc8de9) Signed-off-by: Richard Purdie --- bitbake/lib/bb/fetch2/wget.py | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) (limited to 'bitbake/lib/bb/fetch2/wget.py') diff --git a/bitbake/lib/bb/fetch2/wget.py b/bitbake/lib/bb/fetch2/wget.py index bb686b52db..ffd608f213 100644 --- a/bitbake/lib/bb/fetch2/wget.py +++ b/bitbake/lib/bb/fetch2/wget.py @@ -60,41 +60,47 @@ class Wget(FetchMethod): self.basecmd = d.getVar("FETCHCMD_wget", True) or "/usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate" - def download(self, ud, d, checkonly = False): + def _runwget(self, ud, d, command, quiet): + + logger.debug(2, "Fetching %s using command '%s'" % (ud.url, command)) + bb.fetch2.check_network_access(d, command) + runfetchcmd(command, d, quiet) + + def download(self, ud, d): """Fetch urls""" fetchcmd = self.basecmd - if not checkonly and 'downloadfilename' in ud.parm: + if 'downloadfilename' in ud.parm: dldir = d.getVar("DL_DIR", True) bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile)) fetchcmd += " -O " + dldir + os.sep + ud.localfile uri = ud.url.split(";")[0] - if checkonly: - fetchcmd = self.basecmd + " --spider '%s'" % uri - elif os.path.exists(ud.localpath): + if os.path.exists(ud.localpath): # file exists, but we didnt complete it.. trying again.. fetchcmd = self.basecmd + d.expand(" -c -P ${DL_DIR} '%s'" % uri) else: fetchcmd = self.basecmd + d.expand(" -P ${DL_DIR} '%s'" % uri) - if not checkonly: - logger.info("fetch " + uri) - logger.debug(2, "executing " + fetchcmd) - bb.fetch2.check_network_access(d, fetchcmd) - runfetchcmd(fetchcmd, d, quiet=checkonly) + self._runwget(ud, d, fetchcmd, False) # Sanity check since wget can pretend it succeed when it didn't # Also, this used to happen if sourceforge sent us to the mirror page - if not os.path.exists(ud.localpath) and not checkonly: + if not os.path.exists(ud.localpath): raise FetchError("The fetch command returned success for url %s but %s doesn't exist?!" % (uri, ud.localpath), uri) - if not checkonly and os.path.getsize(ud.localpath) == 0: + if os.path.getsize(ud.localpath) == 0: os.remove(ud.localpath) raise FetchError("The fetch of %s resulted in a zero size file?! Deleting and failing since this isn't right." % (uri), uri) return True def checkstatus(self, ud, d): - return self.download(ud, d, True) + + uri = ud.url.split(";")[0] + fetchcmd = self.basecmd + " --spider '%s'" % uri + + self._runwget(ud, d, fetchcmd, True) + + return True -- cgit v1.2.3-54-g00ecf