bitbake: fetch2/gomod: Support URIs with only a hostname

When calculating the module name for a gomod URI with only a hostname,
e.g.:

  gomod://go.opencensus.io;version=v0.24.0;sha256sum=203a767d7f8e7c1ebe5588220ad168d1e15b14ae70a636de7ca9a4a88a7e0d0c

the non-existing path would actually be treated as "/", which resulted
in a trailing slash being added to the module name preventing the unpack
method from correctly locating the go.mod file.

(Bitbake rev: f0e02e1de4d649e647e4ab61341042dd38d0eeb0)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Peter Kjellerstedt
2024-09-12 23:06:14 +02:00
committed by Richard Purdie
parent d141a3f1ef
commit f290651279

View File

@@ -103,7 +103,9 @@ class GoMod(Wget):
if 'version' not in ud.parm:
raise MissingParameterError('version', ud.url)
module = ud.host + ud.path
module = ud.host
if ud.path != '/':
module += ud.path
ud.parm['module'] = module
# Set URL and filename for wget download
@@ -174,7 +176,9 @@ class GoModGit(Git):
if 'version' not in ud.parm:
raise MissingParameterError('version', ud.url)
module = ud.host + ud.path
module = ud.host
if ud.path != '/':
module += ud.path
ud.parm['module'] = module
# Set host, path and srcrev for git download