From: Julian Haller <julian.hal...@philips.com>

In case BB_FETCH_PREMIRRORONLY is set, the fetcher.download() function
sets BB_NO_NETWORK = "1" after downloading the first file. This alters
the precondition for the second and third loop run, disallowing network
access entirely. As a consequence, the .siginfo and .sig files can
never be downloaded.

Fix this by creating a new copy of localdata for each loop run.

Alternative solutions would be:
- Setting BB_FETCH_PREMIRRORONLY = "0" in localdata
- Setting BB_NO_NETWORK = "0" in each loop run

Both alternatives are highly dependent on the concrete implementation
of the fetcher function, thus making them likely to break in the
future.

Signed-off-by: Julian Haller <julian.hal...@philips.com>
---
 meta/classes-global/sstate.bbclass | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/meta/classes-global/sstate.bbclass 
b/meta/classes-global/sstate.bbclass
index 2c259a6657..eb988b2ca8 100644
--- a/meta/classes-global/sstate.bbclass
+++ b/meta/classes-global/sstate.bbclass
@@ -747,10 +747,11 @@ def pstaging_fetch(sstatefetch, d):
         uris += ['file://{0}.sig;downloadfilename={0}.sig'.format(sstatefetch)]
 
     for srcuri in uris:
-        localdata.delVar('SRC_URI')
-        localdata.setVar('SRC_URI', srcuri)
+        localdata2 = bb.data.createCopy(localdata)
+        localdata2.delVar('SRC_URI')
+        localdata2.setVar('SRC_URI', srcuri)
         try:
-            fetcher = bb.fetch2.Fetch([srcuri], localdata, cache=False)
+            fetcher = bb.fetch2.Fetch([srcuri], localdata2, cache=False)
             fetcher.checkstatus()
             fetcher.download()
 
-- 
2.43.0

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#211085): 
https://lists.openembedded.org/g/openembedded-core/message/211085
Mute This Topic: https://lists.openembedded.org/mt/111099608/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

  • [OE-core] [PATCH] sstate: Fix ss... Julian Haller via lists.openembedded.org

Reply via email to