On Wed, 2020-05-20 at 21:05 -0700, Robert Yang wrote:
> The argument urls of bb.fetch2.Fetch(urls, d) are duplicated to SRC_URI, 
> which caused errors like:
> 
> bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression 
> was ${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher 
> failure: The SRCREV_FORMAT variable must be set when multiple SCMs are used.
> The SCMs are:
> git://github.com/docker/notary.git;destsuffix=git/src/github.com/docker/notary
> git://github.com/docker/notary.git
> 
> The first one is from original SRC_URI, the second one is from the
> variable 'urls', so cleanup SRC_URI before call bb.fetch2.Fetch() can fix the
> problem.
> 
> Signed-off-by: Robert Yang <[email protected]>
> ---
>  meta/classes/archiver.bbclass | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass
> index 43333a7551..780c562b68 100644
> --- a/meta/classes/archiver.bbclass
> +++ b/meta/classes/archiver.bbclass
> @@ -193,7 +193,13 @@ python do_ar_original() {
>                  del decoded[5][param]
>          encoded = bb.fetch2.encodeurl(decoded)
>          urls[i] = encoded
> -    fetch = bb.fetch2.Fetch(urls, d)
> +
> +    # Cleanup SRC_URI before call bb.fetch2.Fetch() since now SRC_URI is in 
> the
> +    # variable "urls", otherwise there might be errors like:
> +    # The SRCREV_FORMAT variable must be set when multiple SCMs are used
> +    ld = bb.data.createCopy(d)
> +    ld.setVar('SRC_URI', '')
> +    fetch = bb.fetch2.Fetch(urls, ld)
>      tarball_suffix = {}
>      for url in fetch.urls:
>          local = fetch.localpath(url).rstrip("/");


Well found! I've starred at that code for a different issue and not
spotted that!

Cheers,

Richard

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#138528): 
https://lists.openembedded.org/g/openembedded-core/message/138528
Mute This Topic: https://lists.openembedded.org/mt/74367766/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to