yocto-autobuilder-helper/scripts/utils.py
Richard Purdie 337f0c12f9 setup-config: Split useful functions to utils.py
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-18 14:53:59 +00:00

47 lines
1.5 KiB
Python

import subprocess
#
# Check if config contains all the listed params
#
def contains(params, config):
for p in params:
if p not in config:
return False
return True
# Check if a config boolean is set
def configtrue(name, config):
if name in config and config[name]:
return True
return False
# Get a configuration variable, check overrides, first, the defaults
def getconfigvar(name, config, target, stepnum):
step = "step" + str(stepnum)
if target in config['overrides']:
if step in config['overrides'][target] and name in config['overrides'][target][step]:
return config['overrides'][target][step][name]
if name in config['overrides'][target]:
return config['overrides'][target][name]
if name in config['defaults']:
return config['defaults'][name]
return False
def getconfiglist(name, config, target, stepnum):
ret = []
step = "step" + str(stepnum)
if target in config['overrides']:
if step in config['overrides'][target] and name in config['overrides'][target][step]:
ret.extend(config['overrides'][target][step][name])
if name in config['overrides'][target]:
ret.extend(config['overrides'][target][name])
if name in config['defaults']:
ret.extend(config['defaults'][name])
return ret
#
# Run a command, trigger a traceback with command output if it fails
#
def runcmd(cmd):
return subprocess.check_output(cmd, stderr=subprocess.STDOUT)