diff --git a/misc/acrn-config/board_config/README b/misc/acrn-config/board_config/README index 70c874ef4..0cdc36e9b 100644 --- a/misc/acrn-config/board_config/README +++ b/misc/acrn-config/board_config/README @@ -1,4 +1,4 @@ -Please run board_cfg_gen.py to generate board related configuration patch, the patch would be applied on current acrn-hypervisor git tree automatically. +Please run board_cfg_gen.py to generate board related configuration files. usage: python3 board_cfg_gen.py [h] --board --scenario positional arguments: diff --git a/misc/acrn-config/board_config/board_cfg_gen.py b/misc/acrn-config/board_config/board_cfg_gen.py index d39041c2f..441e7be96 100755 --- a/misc/acrn-config/board_config/board_cfg_gen.py +++ b/misc/acrn-config/board_config/board_cfg_gen.py @@ -37,15 +37,14 @@ def main(args): :param args: it is a command line args for the script """ err_dic = {} - config_srcs = [] config_dirs = [] - (err_dic, board_info_file, scenario_info_file, enable_commit) = board_cfg_lib.get_param(args) + (err_dic, board_info_file, scenario_info_file) = board_cfg_lib.get_param(args) if err_dic: return err_dic # check env - err_dic = board_cfg_lib.prepare(enable_commit) + err_dic = board_cfg_lib.prepare() if err_dic: return err_dic @@ -77,12 +76,6 @@ def main(args): config_misc_cfg = config_dirs[0] + '/' + GEN_FILE[3] config_board_kconfig = ACRN_CONFIG + board + GEN_FILE[4] - config_srcs.append(config_pci) - config_srcs.append(config_board) - config_srcs.append(config_platform) - config_srcs.append(config_misc_cfg) - config_srcs.append(config_board_kconfig) - # generate board.c with open(config_board, 'w+') as config: err_dic = board_c.generate_file(config) @@ -110,33 +103,21 @@ def main(args): if err_dic: return err_dic - config_str = 'Config files' - gen_str = 'generated' - # move changes to patch, and apply to the source code - if enable_commit: - err_dic = board_cfg_lib.gen_patch(config_srcs, "board " + board) - config_str = 'Config patch' - gen_str = 'committed' - if board not in board_cfg_lib.BOARD_NAMES and not err_dic: - print("{} for NEW board {} is {} successfully!".format(config_str, board, gen_str)) + print("Config files for NEW board {} is generated successfully!".format(board )) elif not err_dic: - print("{} for {} is {} successfully!".format(config_str, board, gen_str)) + print("Config files for {} is generated successfully!".format(board)) else: - print("{} for {} is failed".format(config_str, board)) + print("Config files for {} is failed".format(board)) return err_dic -def ui_entry_api(board_info,scenario_info, enable_commit=False): +def ui_entry_api(board_info, scenario_info): - git_env_check = False arg_list = ['board_cfg_gen.py', '--board', board_info, '--scenario', scenario_info] - if enable_commit: - arg_list.append('--enable_commit') - git_env_check = True - err_dic = board_cfg_lib.prepare(git_env_check) + err_dic = board_cfg_lib.prepare() if err_dic: return err_dic diff --git a/misc/acrn-config/config_app/views.py b/misc/acrn-config/config_app/views.py index 632a7e686..d808dcf10 100644 --- a/misc/acrn-config/config_app/views.py +++ b/misc/acrn-config/config_app/views.py @@ -378,23 +378,20 @@ def generate_src(): launch_setting = generator_config_data['launch_setting'] launch_setting_xml = os.path.join(current_app.config.get('CONFIG_PATH'), board_type, 'user_defined', launch_setting + '.xml') - commit = False - if 'commit' in generator_config_data and generator_config_data['commit'] == 'yes': - commit = True msg = {} error_list = {} status = 'success' if src_type == 'generate_config_src': try: from board_config.board_cfg_gen import ui_entry_api - error_list = ui_entry_api(board_info_xml, scenario_setting_xml, commit) + error_list = ui_entry_api(board_info_xml, scenario_setting_xml) except Exception as error: status = 'fail' error_list = {'board setting error': str(error)} try: from scenario_config.scenario_cfg_gen import ui_entry_api - error_list = ui_entry_api(board_info_xml, scenario_setting_xml, commit) + error_list = ui_entry_api(board_info_xml, scenario_setting_xml) except Exception as error: status = 'fail' error_list = {'scenario setting error': str(error)} @@ -409,7 +406,7 @@ def generate_src(): try: from launch_config.launch_cfg_gen import ui_entry_api - error_list = ui_entry_api(board_info_xml, scenario_setting_xml, launch_setting_xml, commit) + error_list = ui_entry_api(board_info_xml, scenario_setting_xml, launch_setting_xml) except Exception as error: status = 'fail' error_list = {'launch setting error': str(error)} diff --git a/misc/acrn-config/launch_config/README b/misc/acrn-config/launch_config/README index 079f7d34a..cd82dc743 100644 --- a/misc/acrn-config/launch_config/README +++ b/misc/acrn-config/launch_config/README @@ -1,4 +1,4 @@ -Please run launch_cfg_gen.py to generate board related configuration patch, the patch would be applied on current acrn-hypervisor git tree automatically. +Please run launch_cfg_gen.py to generate board related configuration files. usage: python3 launch_cfg_gen.py [h] --board --scenario --launch positional arguments: diff --git a/misc/acrn-config/launch_config/launch_cfg_gen.py b/misc/acrn-config/launch_config/launch_cfg_gen.py index 424a91042..14b0ddd78 100644 --- a/misc/acrn-config/launch_config/launch_cfg_gen.py +++ b/misc/acrn-config/launch_config/launch_cfg_gen.py @@ -85,17 +85,12 @@ def validate_launch_setting(board_info, scenario_info, launch_info): return (launch_cfg_lib.ERR_LIST, pt_sel, virtio, dm) -def ui_entry_api(board_info, scenario_info, launch_info, enable_commit=False): +def ui_entry_api(board_info, scenario_info, launch_info): err_dic = {} - git_env_check = False arg_list = ['launch_cfg_gen.py', '--board', board_info, '--scenario', scenario_info, '--launch', launch_info, '--uosid', '0'] - if enable_commit: - arg_list.append('--enable_commit') - git_env_check = True - - err_dic = launch_cfg_lib.prepare(git_env_check) + err_dic = launch_cfg_lib.prepare() if err_dic: return err_dic @@ -147,15 +142,14 @@ def main(args): This is main function to start generate launch script :param args: it is a command line args for the script """ - config_srcs = [] # get parameters - (err_dic, board_info_file, scenario_info_file, launch_info_file, vm_th, enable_commit) = launch_cfg_lib.get_param(args) + (err_dic, board_info_file, scenario_info_file, launch_info_file, vm_th) = launch_cfg_lib.get_param(args) if err_dic: return err_dic # check env - err_dic = launch_cfg_lib.prepare(enable_commit) + err_dic = launch_cfg_lib.prepare() if err_dic: return err_dic @@ -210,9 +204,7 @@ def main(args): # generate launch script if vm_th: script_name = "launch_uos_id{}.sh".format(vm_th) - commit_msg = script_name launch_script_file = output + script_name - config_srcs.append(launch_script_file) with open(launch_script_file, mode = 'w', newline=None, encoding='utf-8') as config: err_dic = generate_script_file(names, pt_sel, virt_io.dev, dm.args, vm_th, config) if err_dic: @@ -221,26 +213,15 @@ def main(args): for post_vm_i in post_num_list: script_name = "launch_uos_id{}.sh".format(post_vm_i) launch_script_file = output + script_name - config_srcs.append(launch_script_file) with open(launch_script_file, mode = 'w', newline='\n', encoding='utf-8') as config: err_dic = generate_script_file(names, pt_sel, virt_io.dev, dm.args, post_vm_i, config) if err_dic: return err_dic - commit_msg = "launch_uos_id{}.sh".format(launch_vm_count) - - config_str = 'Config files' - gen_str = 'generated' - # move changes to patch, and apply to the source code - if enable_commit: - err_dic = launch_cfg_lib.gen_patch(config_srcs, commit_msg) - config_str = 'Config patch' - gen_str = 'committed' - if not err_dic: - print("{} for {} is {} successfully!".format(config_str, commit_msg, gen_str)) + print("Launch files in {} is generated successfully!".format(output)) else: - print("{} for {} is failed".format(config_str, commit_msg)) + print("Launch files generate failed".format(output)) return err_dic diff --git a/misc/acrn-config/library/board_cfg_lib.py b/misc/acrn-config/library/board_cfg_lib.py index 32966c797..090ae4c68 100644 --- a/misc/acrn-config/library/board_cfg_lib.py +++ b/misc/acrn-config/library/board_cfg_lib.py @@ -45,9 +45,9 @@ SIZE_2G = common.SIZE_2G SIZE_4G = common.SIZE_4G -def prepare(check_git): +def prepare(): """ check environment """ - return common.check_env(check_git) + return common.check_env() def print_yel(msg, warn=False): @@ -177,16 +177,6 @@ def get_sub_leaf_tag(config_file, branch_tag, tag_str): return common.get_leaf_tag_val(config_file, branch_tag, tag_str) -def gen_patch(srcs_list, board_name): - """ - Generate patch and apply to local source code - :param srcs_list: it is a list what contains source files - :param board_name: board name - """ - err_dic = common.add_to_patch(srcs_list, board_name) - return err_dic - - def is_hpa_size(hpa_size_list): """ This is identify if the host physical size list is correct format diff --git a/misc/acrn-config/library/common.py b/misc/acrn-config/library/common.py index 01b06571c..51c7c77f5 100644 --- a/misc/acrn-config/library/common.py +++ b/misc/acrn-config/library/common.py @@ -81,10 +81,9 @@ def print_if_red(msg, err=False): def usage(file_name): """ This is usage for how to use this tool """ print("usage= {} [h] ".format(file_name), end="") - print("--board --scenario [--enable_commit]") + print("--board --scenario ") print('board_info_file : file name of the board info') print('scenario_info_file : file name of the scenario info') - print('enable_commit: enable the flag that git add/commit the generate files to the code base. without --enable_commit will not commit this source code') def get_param(args): @@ -95,51 +94,41 @@ def get_param(args): err_dic = {} board_info_file = False scenario_info_file = False - enable_commit = False if '--board' not in args or '--scenario' not in args: usage(args[0]) err_dic['common error: get wrong parameter'] = "wrong usage" - return (err_dic, board_info_file, scenario_info_file, enable_commit) + return (err_dic, board_info_file, scenario_info_file) args_list = args[1:] - (optlist, args_list) = getopt.getopt(args_list, '', ['board=', 'scenario=', 'enable_commit']) + (optlist, args_list) = getopt.getopt(args_list, '', ['board=', 'scenario=']) for arg_k, arg_v in optlist: if arg_k == '--board': board_info_file = arg_v if arg_k == '--scenario': scenario_info_file = arg_v - if arg_k == '--enable_commit': - enable_commit = True if not board_info_file or not scenario_info_file: usage(args[0]) err_dic['common error: get wrong parameter'] = "wrong usage" - return (err_dic, board_info_file, scenario_info_file, enable_commit) + return (err_dic, board_info_file, scenario_info_file) if not os.path.exists(board_info_file): err_dic['common error: get wrong parameter'] = "{} is not exist!".format(board_info_file) - return (err_dic, board_info_file, scenario_info_file, enable_commit) + return (err_dic, board_info_file, scenario_info_file) if not os.path.exists(scenario_info_file): err_dic['common error: get wrong parameter'] = "{} is not exist!".format(scenario_info_file) - return (err_dic, board_info_file, scenario_info_file, enable_commit) + return (err_dic, board_info_file, scenario_info_file) - return (err_dic, board_info_file, scenario_info_file, enable_commit) + return (err_dic, board_info_file, scenario_info_file) -def check_env(check_git=False): +def check_env(): """ Prepare to check the environment """ err_dic = {} bin_list = [] - if check_git: - bin_list.append('git') - - usr_dir = os.environ['HOME'] - if not os.path.isfile("{}/.gitconfig".format(usr_dir)): - err_dic['commn error: check env failed'] = "git not configured!" - for excute in bin_list: res = subprocess.Popen("which {}".format(excute), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, close_fds=True) @@ -149,14 +138,6 @@ def check_env(check_git=False): if not line: err_dic['commn error: check env failed'] = "'{}' not found, please install it!".format(excute) - if excute == "git": - res = subprocess.Popen("git tag -l", shell=True, stdout=subprocess.PIPE, - stderr=subprocess.PIPE, close_fds=True) - line = res.stdout.readline().decode("ascii") - - if "acrn" not in line: - err_dic['commn error: check env failed'] = "Run this tool in acrn-hypervisor mainline source code!" - for py_cache in PY_CACHES: if os.path.exists(py_cache): shutil.rmtree(py_cache) @@ -524,35 +505,6 @@ def get_load_order_by_vmid(config_file, vm_count, idx): return (err_dic, order_id_dic[idx]) -def add_to_patch(srcs_list, commit_name): - """ - Generate patch and apply to local source code - :param srcs_list: it is a list what contains source files - :param commit_name: distinguish the key commit message for the patch - """ - err_dic = {} - changes = ' '.join(srcs_list) - git_add = "git add {}".format(changes) - ret = subprocess.call(git_add, shell=True, stdout=subprocess.PIPE, - stderr=subprocess.PIPE, close_fds=True) - if ret: - err_dic['add patch: failue'] = "Add patch failue" - return err_dic - - # commit this changes - git_commit = 'git commit -sm "acrn-config: config patch for {}"'.format(commit_name) - - try: - ret = subprocess.call(git_commit, shell=True, stdout=subprocess.PIPE, - stderr=subprocess.PIPE, close_fds=True) - if ret < 0: - err_dic['commit patch: commit patch failue'] = "Commit patch failue" - except (OSError, subprocess.CalledProcessError) as e: - err_dic['commit patch: commit patch failue'] = "Commit patch failue" - - return err_dic - - def vm_pre_launch_cnt(config_file): """ Calculate the pre launched vm number diff --git a/misc/acrn-config/library/launch_cfg_lib.py b/misc/acrn-config/library/launch_cfg_lib.py index 4d3b84c28..b422a3655 100644 --- a/misc/acrn-config/library/launch_cfg_lib.py +++ b/misc/acrn-config/library/launch_cfg_lib.py @@ -60,9 +60,9 @@ PM_CHANNEL_DIC = { MOUNT_FLAG_DIC = {} -def prepare(check_git): +def prepare(): """ Check environment """ - return common.check_env(check_git) + return common.check_env() def print_yel(msg, warn=False): @@ -86,12 +86,11 @@ def print_red(msg, err=False): def usage(file_name): """ This is usage for how to use this tool """ print("usage= {} [h]".format(file_name), end="") - print("--board --scenario --launch --uosid [--enable_commit]") + print("--board --scenario --launch --uosid ") print('board_info_file : file name of the board info') print('scenario_info_file : file name of the scenario info') print('launch_info_file : file name of the launch info') print('uosid : this is the relateive id for post launch vm in scenario info XML:[1..max post launch vm]') - print('enable_commit: enable the flag that git add/commit the generate files to the code base. without --enable_commit will not commit this source code') def get_param(args): @@ -104,24 +103,18 @@ def get_param(args): board_info_file = False scenario_info_file = False launch_info_file = False - enable_commit = False - param_list = ['--board', '--scenario', '--launch', '--uosid', '--enable_commit'] + param_list = ['--board', '--scenario', '--launch', '--uosid'] for arg_str in param_list: - if arg_str == '--enable_commit': - continue - if arg_str not in args: usage(args[0]) err_dic['common error: get wrong parameter'] = "wrong usage" - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) args_list = args[1:] - (optlist, args_list) = getopt.getopt(args_list, '', ['board=', 'scenario=', 'launch=', 'uosid=', 'enable_commit']) + (optlist, args_list) = getopt.getopt(args_list, '', ['board=', 'scenario=', 'launch=', 'uosid=']) for arg_k, arg_v in optlist: - if arg_k == '--enable_commit': - enable_commit = True if arg_k == '--board': board_info_file = arg_v if arg_k == '--scenario': @@ -133,26 +126,26 @@ def get_param(args): vm_th = arg_v if not vm_th.isnumeric(): err_dic['common error: get wrong parameter'] = "--uosid should be a number" - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) if not board_info_file or not scenario_info_file or not launch_info_file: usage(args[0]) err_dic['common error: get wrong parameter'] = "wrong usage" - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) if not os.path.exists(board_info_file): err_dic['common error: get wrong parameter'] = "{} is not exist!".format(board_info_file) - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) if not os.path.exists(scenario_info_file): err_dic['common error: get wrong parameter'] = "{} is not exist!".format(scenario_info_file) - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) if not os.path.exists(launch_info_file): err_dic['common error: get wrong parameter'] = "{} is not exist!".format(launch_info_file) - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) - return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th), enable_commit) + return (err_dic, board_info_file, scenario_info_file, launch_info_file, int(vm_th)) def get_post_num_list(): @@ -371,16 +364,6 @@ def get_vpid_from_bdf(bdf_vpid_map, bdf_list): return vpid_list -def gen_patch(srcs_list, launch_name): - """ - Generate patch and apply to local source code - :param srcs_list: it is a list what contains source files - :param scenario_name: scenario name - """ - err_dic = common.add_to_patch(srcs_list, launch_name) - return err_dic - - def get_uos_type(): """ Get uos name from launch.xml at fist line diff --git a/misc/acrn-config/library/scenario_cfg_lib.py b/misc/acrn-config/library/scenario_cfg_lib.py index 3791f9a51..405e924de 100644 --- a/misc/acrn-config/library/scenario_cfg_lib.py +++ b/misc/acrn-config/library/scenario_cfg_lib.py @@ -52,9 +52,9 @@ LEGACY_TTYS = { 'ttyS3':'0x2E8', } -def prepare(check_git): +def prepare(): """ Check environment """ - return common.check_env(check_git) + return common.check_env() def print_yel(msg, warn=False): @@ -669,16 +669,6 @@ def cpus_assignment(cpus_per_vm, index): return vm_cpu_bmp -def gen_patch(srcs_list, scenario_name): - """ - Generate patch and apply to local source code - :param srcs_list: it is a list what contains source files - :param scenario_name: scenario name - """ - err_dic = common.add_to_patch(srcs_list, scenario_name) - return err_dic - - def get_vuart_info_id(config_file, idx): """ Get vuart information by vuart id indexx diff --git a/misc/acrn-config/scenario_config/README b/misc/acrn-config/scenario_config/README index 315c58258..3d2a01ee6 100644 --- a/misc/acrn-config/scenario_config/README +++ b/misc/acrn-config/scenario_config/README @@ -1,4 +1,4 @@ -Please run scenario_cfg_gen.py to generate board related configuration patch, the patch would be applied on current acrn-hypervisor git tree automatically. +Please run scenario_cfg_gen.py to generate board related configuration files. usage: python3 scenario_cfg_gen.py [h] --board --scenario positional arguments: diff --git a/misc/acrn-config/scenario_config/scenario_cfg_gen.py b/misc/acrn-config/scenario_config/scenario_cfg_gen.py index 2bd0964c5..9b3128a47 100755 --- a/misc/acrn-config/scenario_config/scenario_cfg_gen.py +++ b/misc/acrn-config/scenario_config/scenario_cfg_gen.py @@ -77,14 +77,13 @@ def main(args): :param args: it is a command line args for the script """ err_dic = {} - config_srcs = [] - (err_dic, board_info_file, scenario_info_file, enable_commit) = scenario_cfg_lib.get_param(args) + (err_dic, board_info_file, scenario_info_file) = scenario_cfg_lib.get_param(args) if err_dic: return err_dic # check env - err_dic = scenario_cfg_lib.prepare(enable_commit) + err_dic = scenario_cfg_lib.prepare() if err_dic: return err_dic @@ -106,11 +105,6 @@ def main(args): vm_config_c = SCENARIO_PATH + '/' + scenario + '/' + GEN_FILE[1] pci_config_c = SCENARIO_PATH + '/' + scenario + '/' + GEN_FILE[2] - config_srcs.append(vm_config_h) - config_srcs.append(vm_config_c) - if scenario == "logical_partition": - config_srcs.append(pci_config_c) - # parse the scenario.xml get_scenario_item_values(board_info_file, scenario_info_file) (err_dic, vm_info) = validate_scenario_setting(board_info_file, scenario_info_file) @@ -140,31 +134,19 @@ def main(args): with open(pci_config_c, 'w') as config: pci_dev_c.generate_file(config) - config_str = 'Config files' - gen_str = 'generated' - # move changes to patch, and apply to the source code - if enable_commit: - err_dic = scenario_cfg_lib.gen_patch(config_srcs, "scenario " + scenario) - config_str = 'Config patch' - gen_str = 'committed' - if not err_dic: - print("{} for {} is {} successfully!".format(config_str, scenario, gen_str)) + print("Config files for {} is generated successfully!".format(scenario)) else: - print("{} for {} is failed".format(config_str, scenario)) + print("Config files for {} is failed".format(scenario)) return err_dic -def ui_entry_api(board_info, scenario_info, enable_commit=False): +def ui_entry_api(board_info, scenario_info): - git_env_check = False arg_list = ['board_cfg_gen.py', '--board', board_info, '--scenario', scenario_info] - if enable_commit: - arg_list.append('--enable_commit') - git_env_check = True - err_dic = scenario_cfg_lib.prepare(git_env_check) + err_dic = scenario_cfg_lib.prepare() if err_dic: return err_dic