summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/fetch2/__init__.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-19 17:57:10 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-20 16:45:25 +0000
commit8e71d0e21b7bdcdfaf1db514708e345987cca7a3 (patch)
tree8f4d4e421ab3b915a46a46638c574c9fabf8722f /bitbake/lib/bb/fetch2/__init__.py
parent2b427b9224673ad1a5a39a4b72390f1efa972a4b (diff)
downloadpoky-8e71d0e21b7bdcdfaf1db514708e345987cca7a3.tar.gz
bitbake: fetch2: Abstract fetcher environment to a function
The changing of the environment inside the wget fetcher can race if threading is used, such as with sstate in OE-Core. Abstract the function so the environment can be correct before the function is called, removing the race since the enviroment is then no longer changed. (Bitbake rev: c73bb6023c73f003a160bb02aa4da1b580b86c23) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/fetch2/__init__.py')
-rw-r--r--bitbake/lib/bb/fetch2/__init__.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
index a7e84e0dc7..35fae6623a 100644
--- a/bitbake/lib/bb/fetch2/__init__.py
+++ b/bitbake/lib/bb/fetch2/__init__.py
@@ -851,6 +851,17 @@ FETCH_EXPORT_VARS = ['HOME', 'PATH',
851 'AWS_SECRET_ACCESS_KEY', 851 'AWS_SECRET_ACCESS_KEY',
852 'AWS_DEFAULT_REGION'] 852 'AWS_DEFAULT_REGION']
853 853
854def get_fetcher_environment(d):
855 newenv = {}
856 origenv = d.getVar("BB_ORIGENV")
857 for name in bb.fetch2.FETCH_EXPORT_VARS:
858 value = d.getVar(name)
859 if not value and origenv:
860 value = origenv.getVar(name)
861 if value:
862 newenv[name] = value
863 return newenv
864
854def runfetchcmd(cmd, d, quiet=False, cleanup=None, log=None, workdir=None): 865def runfetchcmd(cmd, d, quiet=False, cleanup=None, log=None, workdir=None):
855 """ 866 """
856 Run cmd returning the command output 867 Run cmd returning the command output