From 0e91da2f78b75292cbef0e04ffde41b5971468b5 Mon Sep 17 00:00:00 2001 From: GangCao Date: Wed, 19 Aug 2020 21:20:13 -0400 Subject: [PATCH] Script: update the JSON content generation Change-Id: Id34e7fc85cb992d76e35a7370a49dbd79a0f5922 Signed-off-by: GangCao Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3846 Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Karol Latecki Reviewed-by: Changpeng Liu Reviewed-by: Tomasz Zawadzki --- scripts/gen_nvme.sh | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) diff --git a/scripts/gen_nvme.sh b/scripts/gen_nvme.sh index fe619b2f3..47b72c31d 100755 --- a/scripts/gen_nvme.sh +++ b/scripts/gen_nvme.sh @@ -13,25 +13,32 @@ function create_classic_config() { } function create_json_config() { - echo "{" - echo '"subsystem": "bdev",' - echo '"config": [' - for ((i = 0; i < ${#bdfs[@]}; i++)); do - echo '{' - echo '"params": {' - echo '"trtype": "PCIe",' - echo "\"name\": \"Nvme$i\"," - echo "\"traddr\": \"${bdfs[i]}\"" - echo '},' - echo '"method": "bdev_nvme_attach_controller"' - if [ -z ${bdfs[i + 1]} ]; then - echo '}' - else - echo '},' - fi + local bdev_json_cfg=() + + for i in "${!bdfs[@]}"; do + bdev_json_cfg+=("$( + cat <<- JSON + { + "method": "bdev_nvme_attach_controller", + "params": { + "trtype": "PCIe", + "name":"Nvme${i}", + "traddr":"${bdfs[i]}" + } + } + JSON + )") done - echo ']' - echo '}' + + local IFS="," + cat <<- JSON + { + "subsystem": "bdev", + "config": [ + ${bdev_json_cfg[*]} + ] + } + JSON } function create_json_config_with_subsystems() {