summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/utils.py
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2022-01-20 22:52:55 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-01 07:31:48 +0000
commitd77178e8df213160d0fe58c5942507f01e7af2bd (patch)
tree7cd60ea13922e5f105856fe8afbeaf8316e95867 /bitbake/lib/bb/utils.py
parent80bddd7c36412f758f1d43036c3f4845cbc87b6c (diff)
downloadpoky-d77178e8df213160d0fe58c5942507f01e7af2bd.tar.gz
bitbake: bitbake: bitbake-worker: Preserve network non-local uid
The NIS can't work when network is dissable, so preserve network for it, the error is like: do_ypcall: clnt_call: RPC: Unable to send; errno = Network is unreachable Note, enable nscd on the build machine might be a solution, but that isn't reliable since it depends on whether the network function has been cached or not. (Bitbake rev: 4eafae7904bae6e5c6bc50356e8a9077f2e207fa) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/utils.py')
-rw-r--r--bitbake/lib/bb/utils.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py
index 0312231933..128b3ab570 100644
--- a/bitbake/lib/bb/utils.py
+++ b/bitbake/lib/bb/utils.py
@@ -1735,3 +1735,19 @@ def environment(**envvars):
1735 os.environ[var] = backup[var] 1735 os.environ[var] = backup[var]
1736 else: 1736 else:
1737 del os.environ[var] 1737 del os.environ[var]
1738
1739def is_local_uid(uid=''):
1740 """
1741 Check whether uid is a local one or not.
1742 Can't use pwd module since it gets all UIDs, not local ones only.
1743 """
1744 if not uid:
1745 uid = os.getuid()
1746 with open('/etc/passwd', 'r') as f:
1747 for line in f:
1748 line_split = line.split(':')
1749 if len(line_split) < 3:
1750 continue
1751 if str(uid) == line_split[2]:
1752 return True
1753 return False