From 098e8ded339f3bf864f3bad9871028176f70b12b Mon Sep 17 00:00:00 2001 From: Yu Ke Date: Mon, 24 Jan 2011 14:58:26 +0800 Subject: [PATCH] bb.fetch2: add "BB_NO_NETWORK" option Sometime user want a purely local fetching, i.e. using local mirror without any remote netowrk access. BB_NO_NETWORK option is introduced for this purpose check_network_access() is the guard for BB_NO_NETWOKR option. it should be put in any place that fetcher use network access Signed-off-by: Yu Ke --- bitbake/lib/bb/fetch2/__init__.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py index 886d49afa2..9fe4eb2c02 100644 --- a/bitbake/lib/bb/fetch2/__init__.py +++ b/bitbake/lib/bb/fetch2/__init__.py @@ -469,6 +469,16 @@ def runfetchcmd(cmd, d, quiet = False): return output +def check_network_access(d, info = ""): + """ + log remote network access, and error if BB_NO_NETWORK is set + """ + if bb.data.getVar("BB_NO_NETWORK", d, True) == "1": + bb.error("BB_NO_NETWORK is set, but the fetcher code attempted network access with the command %s" % info) + raise FetchError("BB_NO_NETWORK violation") + else: + bb.note("Fetcher accessed the network with the command %s" % info) + def try_mirrors(d, uri, mirrors, check = False, force = False): """ Try to use a mirrored version of the sources.