test/lvol: Add function to handle output from simple jq queries
This function exposes assoc array which consits of fields extracted out of the parsed jq output. Change-Id: I189c5c01e6efd60d6f2010df90093920a5d37690 Signed-off-by: Michal Berger <michalx.berger@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/778 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
This commit is contained in:
parent
eb33c9a659
commit
64cfaf3f16
@ -323,6 +323,45 @@ function rpc_cmd() {
|
||||
[[ $rc == 0 ]]
|
||||
}
|
||||
|
||||
function rpc_cmd_simple_data_json() {
|
||||
|
||||
local elems="$1[@]" elem
|
||||
local -gA jq_out=()
|
||||
local jq val
|
||||
|
||||
local lvs=(
|
||||
"uuid"
|
||||
"name"
|
||||
"base_bdev"
|
||||
"total_data_clusters"
|
||||
"free_clusters"
|
||||
"block_size"
|
||||
"cluster_size"
|
||||
)
|
||||
|
||||
local bdev=(
|
||||
"name"
|
||||
"aliases[0]"
|
||||
"block_size"
|
||||
"num_blocks"
|
||||
"uuid"
|
||||
"product_name"
|
||||
)
|
||||
|
||||
[[ -v $elems ]] || return 1
|
||||
|
||||
for elem in "${!elems}"; do
|
||||
jq="${jq:+$jq,\"\\n\",}\"$elem\",\" \",.[0].$elem"
|
||||
done
|
||||
jq+=',"\n"'
|
||||
|
||||
shift
|
||||
while read -r elem val; do
|
||||
jq_out["$elem"]=$val
|
||||
done < <(rpc_cmd "$@" | jq -jr "$jq")
|
||||
(( ${#jq_out[@]} > 0 )) || return 1
|
||||
}
|
||||
|
||||
function timing() {
|
||||
direction="$1"
|
||||
testname="$2"
|
||||
|
@ -8,6 +8,14 @@ LVS_DEFAULT_CLUSTER_SIZE=$(( LVS_DEFAULT_CLUSTER_SIZE_MB * 1024 * 1024 ))
|
||||
LVS_DEFAULT_CAPACITY_MB=$(( MALLOC_SIZE_MB - LVS_DEFAULT_CLUSTER_SIZE_MB ))
|
||||
LVS_DEFAULT_CAPACITY=$(( LVS_DEFAULT_CAPACITY_MB * 1024 * 1024 ))
|
||||
|
||||
function get_bdev_jq() {
|
||||
rpc_cmd_simple_data_json bdev "$@"
|
||||
}
|
||||
|
||||
function get_lvs_jq() {
|
||||
rpc_cmd_simple_data_json lvs "$@"
|
||||
}
|
||||
|
||||
function check_leftover_devices() {
|
||||
leftover_bdevs=$(rpc_cmd bdev_get_bdevs)
|
||||
[ "$(jq length <<< "$leftover_bdevs")" == "0" ]
|
||||
|
Loading…
Reference in New Issue
Block a user