Add support for BOOT_TABLE_PATH -v parm
Change-Id: I99d7210c77fe44043420d75fadc107d3c444a72c
Signed-off-by: Michael Walsh <micwalsh@us.ibm.com>
diff --git a/extended/obmc_boot_test_resource.robot b/extended/obmc_boot_test_resource.robot
index 45b655d..063d47d 100644
--- a/extended/obmc_boot_test_resource.robot
+++ b/extended/obmc_boot_test_resource.robot
@@ -20,7 +20,7 @@
... status_file_path openbmc_model boot_pass boot_fail ffdc_dir_path_style
... ffdc_check ffdc_only ffdc_function_list state_change_timeout
... power_on_timeout power_off_timeout boot_fail_threshold delete_errlogs
-... call_post_stack_plug do_pre_boot_plug_in_setup test_mode quiet debug
+... call_post_stack_plug do_pre_boot_plug_in_setup boot_table_path test_mode quiet debug
# Initialize each program parameter.
${openbmc_host} ${EMPTY}
@@ -71,6 +71,9 @@
# choose whether to run pre_boot_plug_in_setup which clears existing FFDC file
# lists and sets new ffdc_prefix value.
${do_pre_boot_plug_in_setup} ${1}
+# The path to the boot_table.json file which defines the boot requirements. This defaults to the value of
+# the BOOT_TABLE_PATH environment variable or to data/boot_table.json.
+${boot_table_path} ${None}
${test_mode} 0
${quiet} 0
${debug} 0
diff --git a/lib/obmc_boot_test.py b/lib/obmc_boot_test.py
index c31b053..780b8a07 100755
--- a/lib/obmc_boot_test.py
+++ b/lib/obmc_boot_test.py
@@ -46,8 +46,6 @@
# Set up boot data structures.
os_host = BuiltIn().get_variable_value("${OS_HOST}", default="")
-boot_table = create_boot_table(os_host=os_host)
-valid_boot_types = create_valid_boot_list(boot_table)
boot_lists = read_boot_lists()
@@ -191,6 +189,8 @@
global ffdc_list_file_path
global ffdc_report_list_path
global ffdc_summary_list_path
+ global boot_table
+ global valid_boot_types
if ffdc_dir_path_style == "":
ffdc_dir_path_style = int(os.environ.get('FFDC_DIR_PATH_STYLE', '0'))
@@ -199,6 +199,9 @@
boot_list = list(filter(None, boot_list.split(":")))
boot_stack = list(filter(None, boot_stack.split(":")))
+ boot_table = create_boot_table(boot_table_path, os_host=os_host)
+ valid_boot_types = create_valid_boot_list(boot_table)
+
cleanup_boot_results_file()
boot_results_file_path = create_boot_results_file_path(pgm_name,
openbmc_nickname,