diff options
author | Ross Burton <ross.burton@intel.com> | 2016-05-25 10:20:37 +1200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-06-02 21:14:21 +0100 |
commit | 26379ff2b686313c82af87a3a35b47adbc0183be (patch) | |
tree | a784a61426086b98d3208bcb3bfcb3ba4d9b84db | |
parent | 9ea7d3ec59c2b09ae60cf0c7f18472355bfb98d7 (diff) | |
download | bitbake-26379ff2b686313c82af87a3a35b47adbc0183be.tar.gz |
fetch2: export DBUS_SESSION_BUS_ADDRESS to support authentication agents
Some users may want to use authenticated SSH connections with credentials stored
in a keyring, such as gnome-keyring. These typically need a DBus session bus
connection, so pass DBUS_SESSION_BUS_ADDRESS into the fetcher environment.
To avoid the user needing to set it in their local.conf (which wouldn't be
usable) or adding it to the environment-cleansing whitelist (which would
potentially impact builds) allow the variables being passed to the fetchers to
come from the data store (first) or the original environment (second).
>From bitbake master rev: 20ad1ea87712d042bd5d89ce1957793f7ff71da0
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/fetch2/__init__.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/bb/fetch2/__init__.py b/lib/bb/fetch2/__init__.py index 1fa67020c..e8fbe89a3 100644 --- a/lib/bb/fetch2/__init__.py +++ b/lib/bb/fetch2/__init__.py @@ -807,13 +807,14 @@ def runfetchcmd(cmd, d, quiet=False, cleanup=None): 'GIT_SSL_CAINFO', 'GIT_SMART_HTTP', 'SSH_AUTH_SOCK', 'SSH_AGENT_PID', - 'SOCKS5_USER', 'SOCKS5_PASSWD'] + 'SOCKS5_USER', 'SOCKS5_PASSWD', + 'DBUS_SESSION_BUS_ADDRESS'] if not cleanup: cleanup = [] for var in exportvars: - val = d.getVar(var, True) + val = d.getVar(var, True) or d.getVar("BB_ORIGENV", False).getVar(var, True) if val: cmd = 'export ' + var + '=\"%s\"; %s' % (val, cmd) |