implementation of environment variable passthrough

With this its possible to create custom environment variables within the kas
configuration file, that are passed through to the build environment:

    env:
      VARIABLE_NAME: "default variable value"

Those variables can be overwritten by variables of the environment kas is
started in:

    $ VARIABLE_NAME="overwritten variable value" kas shell ...

Those variables are also added to the 'BB_ENV_EXTRAWHITE' variable list to make
them available to bitbake.

This is useful for instance storing sensitive information, that should not be
part of the configuration files or bitbake recipes.

Signed-off-by: Claudius Heine <ch@denx.de>
This commit is contained in:
Claudius Heine
2017-11-23 14:15:51 +01:00
committed by Daniel Wagner
parent cd076101f4
commit 95015045db
6 changed files with 35 additions and 1 deletions

View File

@@ -306,7 +306,13 @@ def get_build_environ(config, build_dir):
except ValueError:
pass
conf_env = config.get_environment()
env_vars = ['SSTATE_DIR', 'DL_DIR', 'TMPDIR']
env_vars.extend(conf_env)
env.update(conf_env)
if 'BB_ENV_EXTRAWHITE' in env:
extra_white = env['BB_ENV_EXTRAWHITE'] + ' '.join(env_vars)
env.update({'BB_ENV_EXTRAWHITE': extra_white})