* [PATCH] fetch/wget: Start to clean up command construction
@ 2014-02-28 17:25 Richard Purdie
0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2014-02-28 17:25 UTC (permalink / raw)
To: bitbake-devel
Start to clean up wget fetcher command construction to allow clearer
and more extensible code structure. Drops support for ${URI} and
${FILE} directly in the commands.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/bitbake/lib/bb/fetch2/wget.py b/bitbake/lib/bb/fetch2/wget.py
index e2f99ce..bb686b5 100644
--- a/bitbake/lib/bb/fetch2/wget.py
+++ b/bitbake/lib/bb/fetch2/wget.py
@@ -58,28 +58,27 @@ class Wget(FetchMethod):
ud.localfile = data.expand(urllib.unquote(ud.basename), d)
+ 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):
"""Fetch urls"""
- basecmd = d.getVar("FETCHCMD_wget", True) or "/usr/bin/env wget -t 2 -T 30 -nv --passive-ftp --no-check-certificate"
+ fetchcmd = self.basecmd
if not checkonly and 'downloadfilename' in ud.parm:
dldir = d.getVar("DL_DIR", True)
bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile))
- basecmd += " -O " + dldir + os.sep + ud.localfile
+ fetchcmd += " -O " + dldir + os.sep + ud.localfile
+ uri = ud.url.split(";")[0]
if checkonly:
- fetchcmd = d.expand(basecmd + " --spider '${URI}'")
+ fetchcmd = self.basecmd + " --spider '%s'" % uri
elif os.path.exists(ud.localpath):
# file exists, but we didnt complete it.. trying again..
- fetchcmd = d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
+ fetchcmd = self.basecmd + d.expand(" -c -P ${DL_DIR} '%s'" % uri)
else:
- fetchcmd = d.expand(basecmd + " -P ${DL_DIR} '${URI}'")
-
- uri = ud.url.split(";")[0]
+ fetchcmd = self.basecmd + d.expand(" -P ${DL_DIR} '%s'" % uri)
- fetchcmd = fetchcmd.replace("${URI}", uri.split(";")[0])
- fetchcmd = fetchcmd.replace("${FILE}", ud.basename)
if not checkonly:
logger.info("fetch " + uri)
logger.debug(2, "executing " + fetchcmd)
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] fetch/wget: Start to clean up command construction
@ 2014-03-06 20:41 Kristof Robot
2014-03-09 18:13 ` Richard Purdie
0 siblings, 1 reply; 3+ messages in thread
From: Kristof Robot @ 2014-03-06 20:41 UTC (permalink / raw)
To: bitbake-devel
>Start to clean up wget fetcher command construction to allow clearer
>and more extensible code structure. Drops support for ${URI} and
>${FILE} directly in the commands.
>
>Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
>[...]
> if not checkonly and 'downloadfilename' in ud.parm:
> dldir = d.getVar("DL_DIR", True)
> bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile))
>- basecmd += " -O " + dldir + os.sep + ud.localfile
>+ fetchcmd += " -O " + dldir + os.sep + ud.localfile
>
>+ uri = ud.url.split(";")[0]
> if checkonly:
>- fetchcmd = d.expand(basecmd + " --spider '${URI}'")
>+ fetchcmd = self.basecmd + " --spider '%s'" % uri
> elif os.path.exists(ud.localpath):
> # file exists, but we didnt complete it.. trying again..
>- fetchcmd = d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
>+ fetchcmd = self.basecmd + d.expand(" -c -P ${DL_DIR} '%s'" % uri)
> else:
>- fetchcmd = d.expand(basecmd + " -P ${DL_DIR} '${URI}'")
>-
This patch breaks the "downloadfilename" functionality, as the
fetchcmd append in the first if structure will be overwritten by the
fetchcmd assignments in the second if structure, effectively losing
the appended information.
As a quick fix, I replaced
fetchcmd += " -O " + dldir + os.sep + ud.localfile
by
self.basecmd += " -O " + dldir + os.sep + ud.localfile
but there might be a better way of resolving this?
Kristof
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] fetch/wget: Start to clean up command construction
2014-03-06 20:41 [PATCH] fetch/wget: Start to clean up command construction Kristof Robot
@ 2014-03-09 18:13 ` Richard Purdie
0 siblings, 0 replies; 3+ messages in thread
From: Richard Purdie @ 2014-03-09 18:13 UTC (permalink / raw)
To: Kristof Robot; +Cc: bitbake-devel
On Thu, 2014-03-06 at 21:41 +0100, Kristof Robot wrote:
> >Start to clean up wget fetcher command construction to allow clearer
> >and more extensible code structure. Drops support for ${URI} and
> >${FILE} directly in the commands.
> >
> >Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> >[...]
> > if not checkonly and 'downloadfilename' in ud.parm:
> > dldir = d.getVar("DL_DIR", True)
> > bb.utils.mkdirhier(os.path.dirname(dldir + os.sep + ud.localfile))
> >- basecmd += " -O " + dldir + os.sep + ud.localfile
> >+ fetchcmd += " -O " + dldir + os.sep + ud.localfile
> >
> >+ uri = ud.url.split(";")[0]
> > if checkonly:
> >- fetchcmd = d.expand(basecmd + " --spider '${URI}'")
> >+ fetchcmd = self.basecmd + " --spider '%s'" % uri
> > elif os.path.exists(ud.localpath):
> > # file exists, but we didnt complete it.. trying again..
> >- fetchcmd = d.expand(basecmd + " -c -P ${DL_DIR} '${URI}'")
> >+ fetchcmd = self.basecmd + d.expand(" -c -P ${DL_DIR} '%s'" % uri)
> > else:
> >- fetchcmd = d.expand(basecmd + " -P ${DL_DIR} '${URI}'")
> >-
>
> This patch breaks the "downloadfilename" functionality, as the
> fetchcmd append in the first if structure will be overwritten by the
> fetchcmd assignments in the second if structure, effectively losing
> the appended information.
>
> As a quick fix, I replaced
>
> fetchcmd += " -O " + dldir + os.sep + ud.localfile
>
> by
>
> self.basecmd += " -O " + dldir + os.sep + ud.localfile
>
> but there might be a better way of resolving this?
Thanks, looking at the code I think I was intending it to work
differently but confused things somewhere through the various patches.
I've pushed a fix that should resolve this, thanks for the report!
Cheers,
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-03-09 18:13 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-06 20:41 [PATCH] fetch/wget: Start to clean up command construction Kristof Robot
2014-03-09 18:13 ` Richard Purdie
-- strict thread matches above, loose matches on Subject: below --
2014-02-28 17:25 Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.