configdump: alias config-dump, config-dump-json and new config-dump-no-json (bash declare format)

This commit is contained in:
Ricardo Pardini
2023-05-04 13:21:06 +02:00
committed by igorpecovnik
parent 0ff694cfbd
commit 7c0fb70a2b
2 changed files with 15 additions and 7 deletions

View File

@@ -15,6 +15,12 @@ function cli_config_dump_json_run() {
# configuration etc - it initializes the extension manager
do_capturing_defs config_board_and_remove_useless < /dev/null # this sets CAPTURED_VARS_NAMES and CAPTURED_VARS_ARRAY; the < /dev/null is take away the terminal from stdin
if [[ "${ARMBIAN_COMMAND}" == "config-dump-no-json" ]]; then
# for debugging the bash-declare-to-JSON parser
echo "${CAPTURED_VARS_ARRAY[@]}"
return 0
fi
# convert to JSON, using python helper; each var is passed via a command line argument; that way we avoid newline/nul-char separation issues
display_alert "Dumping JSON" "for ${#CAPTURED_VARS_ARRAY[@]} variables" "ext"
python3 "${SRC}/lib/tools/configdump2json.py" "--args" "${CAPTURED_VARS_ARRAY[@]}" # to stdout

View File

@@ -20,14 +20,16 @@ function armbian_register_commands() {
["requirements"]="requirements" # implemented in cli_requirements_pre_run and cli_requirements_run
# Given a board/config/exts, dump out the (non-userspace) JSON of configuration
["configdump"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["config-dump-json"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["configdump"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["config-dump"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["config-dump-json"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["config-dump-no-json"]="config_dump_json" # implemented in cli_config_dump_json_pre_run and cli_config_dump_json_run
["inventory"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["targets"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-matrix"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-workflow"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-template"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["inventory"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["targets"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-matrix"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-workflow"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["gha-template"]="json_info" # implemented in cli_json_info_pre_run and cli_json_info_run
["kernel-patches-to-git"]="patch_kernel" # implemented in cli_patch_kernel_pre_run and cli_patch_kernel_run