import os
import commons
from jsonwrapper import JsonWrapper
install_phase = commons.PRE_INSTALL
enabled = True
def get_packages_to_install(options, config_type):
package_list = []
install_option = options[config_type]
for include_type in install_option["include"]:
package_list = package_list + get_packages_to_install(options, include_type)
json_wrapper_package_list = JsonWrapper(install_option["file"])
package_list_json = json_wrapper_package_list.read()
package_list = package_list + package_list_json["packages"]
return package_list
def execute(name, ks_config, config, root):
if ks_config:
options = JsonWrapper("build_install_options_all.json").read()
packages = get_packages_to_install(options, ks_config['type'])
if 'additional_packages' in ks_config:
packages.extend(ks_config['additional_packages'])
config['type'] = ks_config['type']
config["packages"] = packages