test/spdkcli: Reduce execution time for spdkcli tests

Pass many spdkcli commands to spdkcli_job.py

Change-Id: I0cf5840fdf7183febff1872c7fc8d1cb303a06f1
Signed-off-by: Pawel Kaminski <pawelx.kaminski@intel.com>
Reviewed-on: https://review.gerrithub.io/435891
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
Pawel Kaminski 2018-12-03 13:41:25 -05:00 committed by Jim Harris
parent a5380c752b
commit 6319ce1c09
7 changed files with 222 additions and 183 deletions

View File

@ -15,26 +15,27 @@ run_spdk_tgt
timing_exit run_spdk_tgt timing_exit run_spdk_tgt
timing_enter spdkcli_create_iscsi_config timing_enter spdkcli_create_iscsi_config
$spdkcli_job "/bdevs/malloc create 32 512 Malloc0" "Malloc0" True $spdkcli_job "'/bdevs/malloc create 32 512 Malloc0' 'Malloc0' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc1" "Malloc1" True '/bdevs/malloc create 32 512 Malloc1' 'Malloc1' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc2" "Malloc2" True '/bdevs/malloc create 32 512 Malloc2' 'Malloc2' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc3" "Malloc3" True '/bdevs/malloc create 32 512 Malloc3' 'Malloc3' True
$spdkcli_job "/iscsi/portal_groups create 1 \"127.0.0.1:3261 127.0.0.1:3263@0x1\"" "host=127.0.0.1, port=3261" True '/iscsi/portal_groups create 1 \"127.0.0.1:3261 127.0.0.1:3263@0x1\"' 'host=127.0.0.1, port=3261' True
$spdkcli_job "/iscsi/portal_groups create 2 127.0.0.1:3262" "host=127.0.0.1, port=3262" True '/iscsi/portal_groups create 2 127.0.0.1:3262' 'host=127.0.0.1, port=3262' True
$spdkcli_job "/iscsi/initiator_groups create 2 ANY 10.0.2.15/32" "hostname=ANY, netmask=10.0.2.15/32" True '/iscsi/initiator_groups create 2 ANY 10.0.2.15/32' 'hostname=ANY, netmask=10.0.2.15/32' True
$spdkcli_job "/iscsi/initiator_groups create 3 ANZ 10.0.2.15/32" "hostname=ANZ, netmask=10.0.2.15/32" True '/iscsi/initiator_groups create 3 ANZ 10.0.2.15/32' 'hostname=ANZ, netmask=10.0.2.15/32' True
$spdkcli_job "/iscsi/initiator_groups add_initiator 2 ANW 10.0.2.16/32" "hostname=ANW, netmask=10.0.2.16" True '/iscsi/initiator_groups add_initiator 2 ANW 10.0.2.16/32' 'hostname=ANW, netmask=10.0.2.16' True
$spdkcli_job "/iscsi/target_nodes create Target0 Target0_alias \"Malloc0:0 Malloc1:1\" 1:2 64 g=1" "Target0" True '/iscsi/target_nodes create Target0 Target0_alias \"Malloc0:0 Malloc1:1\" 1:2 64 g=1' 'Target0' True
$spdkcli_job "/iscsi/target_nodes create Target1 Target1_alias Malloc2:0 1:2 64 g=1" "Target1" True '/iscsi/target_nodes create Target1 Target1_alias Malloc2:0 1:2 64 g=1' 'Target1' True
$spdkcli_job "/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 add_pg_ig_maps \"1:3 2:2\"" "portal_group1 - initiator_group3" True '/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 add_pg_ig_maps \"1:3 2:2\"' 'portal_group1 - initiator_group3' True
$spdkcli_job "/iscsi/target_nodes add_lun iqn.2016-06.io.spdk:Target1 Malloc3 2" "Malloc3" True '/iscsi/target_nodes add_lun iqn.2016-06.io.spdk:Target1 Malloc3 2' 'Malloc3' True
$spdkcli_job "/iscsi/auth_groups create 1 \"user:test1 secret:test1 muser:mutual_test1 msecret:mutual_test1,\ '/iscsi/auth_groups create 1 \"user:test1 secret:test1 muser:mutual_test1 msecret:mutual_test1,\
user:test3 secret:test3 muser:mutual_test3 msecret:mutual_test3\"" "user=test3" True user:test3 secret:test3 muser:mutual_test3 msecret:mutual_test3\"' 'user=test3' True
$spdkcli_job "/iscsi/auth_groups add_secret 1 user=test2 secret=test2 muser=mutual_test2 msecret=mutual_test2" "user=test2" True '/iscsi/auth_groups add_secret 1 user=test2 secret=test2 muser=mutual_test2 msecret=mutual_test2' 'user=test2' True
$spdkcli_job "/iscsi/auth_groups create 2 \"user:test4 secret:test4 muser:mutual_test4 msecret:mutual_test4\"" "user=test4" True '/iscsi/auth_groups create 2 \"user:test4 secret:test4 muser:mutual_test4 msecret:mutual_test4\"' 'user=test4' True
$spdkcli_job "/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 set_auth g=1 d=true" "disable_chap: True" True '/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 set_auth g=1 d=true' 'disable_chap: True' True
$spdkcli_job "/iscsi/global_params set_auth g=1 d=true r=false" "disable_chap: True" True '/iscsi/global_params set_auth g=1 d=true r=false' 'disable_chap: True' True
$spdkcli_job "/iscsi ls" "Malloc" True '/iscsi ls' 'Malloc' True
"
timing_exit spdkcli_create_iscsi_config timing_exit spdkcli_create_iscsi_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -42,22 +43,23 @@ check_match
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_clear_iscsi_config timing_enter spdkcli_clear_iscsi_config
$spdkcli_job "/iscsi/auth_groups delete_secret 1 test2" "user=test2" $spdkcli_job "'/iscsi/auth_groups delete_secret 1 test2' 'user=test2'
$spdkcli_job "/iscsi/auth_groups delete_secret_all 1" "user=test1" '/iscsi/auth_groups delete_secret_all 1' 'user=test1'
$spdkcli_job "/iscsi/auth_groups delete 1" "user=test1" '/iscsi/auth_groups delete 1' 'user=test1'
$spdkcli_job "/iscsi/auth_groups delete_all" "user=test4" '/iscsi/auth_groups delete_all' 'user=test4'
$spdkcli_job "/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 delete_pg_ig_maps \"1:3 2:2\"" "portal_group1 - initiator_group3" '/iscsi/target_nodes/iqn.2016-06.io.spdk:Target0 delete_pg_ig_maps \"1:3 2:2\"' 'portal_group1 - initiator_group3'
$spdkcli_job "/iscsi/target_nodes delete iqn.2016-06.io.spdk:Target1" "Target1" '/iscsi/target_nodes delete iqn.2016-06.io.spdk:Target1' 'Target1'
$spdkcli_job "/iscsi/target_nodes delete_all" "Target0" '/iscsi/target_nodes delete_all' 'Target0'
$spdkcli_job "/iscsi/initiator_groups delete_initiator 2 ANW 10.0.2.16/32" "ANW" '/iscsi/initiator_groups delete_initiator 2 ANW 10.0.2.16/32' 'ANW'
$spdkcli_job "/iscsi/initiator_groups delete 3" "ANZ" '/iscsi/initiator_groups delete 3' 'ANZ'
$spdkcli_job "/iscsi/initiator_groups delete_all" "ANY" '/iscsi/initiator_groups delete_all' 'ANY'
$spdkcli_job "/iscsi/portal_groups delete 1" "127.0.0.1:3261" '/iscsi/portal_groups delete 1' '127.0.0.1:3261'
$spdkcli_job "/iscsi/portal_groups delete_all" "127.0.0.1:3262" '/iscsi/portal_groups delete_all' '127.0.0.1:3262'
$spdkcli_job "/bdevs/malloc delete Malloc3" "Malloc3" '/bdevs/malloc delete Malloc3' 'Malloc3'
$spdkcli_job "/bdevs/malloc delete Malloc2" "Malloc2" '/bdevs/malloc delete Malloc2' 'Malloc2'
$spdkcli_job "/bdevs/malloc delete Malloc1" "Malloc1" '/bdevs/malloc delete Malloc1' 'Malloc1'
$spdkcli_job "/bdevs/malloc delete Malloc0" "Malloc0" '/bdevs/malloc delete Malloc0' 'Malloc0'
"
timing_exit spdkcli_clear_iscsi_config timing_exit spdkcli_clear_iscsi_config
killprocess $spdk_tgt_pid killprocess $spdk_tgt_pid

View File

@ -19,42 +19,43 @@ RDMA_IP_LIST=$(get_available_rdma_ips)
NVMF_TARGET_IP=$(echo "$RDMA_IP_LIST" | head -n 1) NVMF_TARGET_IP=$(echo "$RDMA_IP_LIST" | head -n 1)
timing_enter spdkcli_create_nvmf_config timing_enter spdkcli_create_nvmf_config
$spdkcli_job "/bdevs/malloc create 32 512 Malloc1" "Malloc1" True $spdkcli_job "'/bdevs/malloc create 32 512 Malloc1' 'Malloc1' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc2" "Malloc2" True '/bdevs/malloc create 32 512 Malloc2' 'Malloc2' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc3" "Malloc3" True '/bdevs/malloc create 32 512 Malloc3' 'Malloc3' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc4" "Malloc4" True '/bdevs/malloc create 32 512 Malloc4' 'Malloc4' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc5" "Malloc5" True '/bdevs/malloc create 32 512 Malloc5' 'Malloc5' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc6" "Malloc6" True '/bdevs/malloc create 32 512 Malloc6' 'Malloc6' True
$spdkcli_job "nvmf/transport create RDMA max_qpairs_per_ctrlr=4 io_unit_size=8192" True 'nvmf/transport create RDMA max_qpairs_per_ctrlr=4 io_unit_size=8192' '' True
$spdkcli_job "/nvmf/subsystem create nqn.2014-08.org.spdk:cnode1 N37SXV509SRW\ '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode1 N37SXV509SRW\
max_namespaces=4 allow_any_host=True" "nqn.2014-08.org.spdk:cnode1" True max_namespaces=4 allow_any_host=True' 'nqn.2014-08.org.spdk:cnode1' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc3 1" "Malloc3" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc3 1' 'Malloc3' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc4 2" "Malloc4" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc4 2' 'Malloc4' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create \
RDMA $NVMF_TARGET_IP 4260 IPv4" "$NVMF_TARGET_IP:4260" True RDMA $NVMF_TARGET_IP 4260 IPv4' '$NVMF_TARGET_IP:4260' True
$spdkcli_job "/nvmf/subsystem create nqn.2014-08.org.spdk:cnode2 N37SXV509SRD\ '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode2 N37SXV509SRD\
max_namespaces=2 allow_any_host=True" "nqn.2014-08.org.spdk:cnode2" True max_namespaces=2 allow_any_host=True' 'nqn.2014-08.org.spdk:cnode2' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/namespaces create Malloc2" "Malloc2" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/namespaces create Malloc2' 'Malloc2' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/listen_addresses create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode2/listen_addresses create \
RDMA $NVMF_TARGET_IP 4260 IPv4" "$NVMF_TARGET_IP:4260" True RDMA $NVMF_TARGET_IP 4260 IPv4' '$NVMF_TARGET_IP:4260' True
$spdkcli_job "/nvmf/subsystem create nqn.2014-08.org.spdk:cnode3 N37SXV509SRR\ '/nvmf/subsystem create nqn.2014-08.org.spdk:cnode3 N37SXV509SRR\
max_namespaces=2 allow_any_host=True" "nqn.2014-08.org.spdk:cnode2" True max_namespaces=2 allow_any_host=True' 'nqn.2014-08.org.spdk:cnode2' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/namespaces create Malloc1" "Malloc1" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/namespaces create Malloc1' 'Malloc1' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/listen_addresses create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/listen_addresses create \
RDMA $NVMF_TARGET_IP 4260 IPv4" "$NVMF_TARGET_IP:4260" True RDMA $NVMF_TARGET_IP 4260 IPv4' '$NVMF_TARGET_IP:4260' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/listen_addresses create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/listen_addresses create \
RDMA $NVMF_TARGET_IP 4261 IPv4" "$NVMF_TARGET_IP:4261" True RDMA $NVMF_TARGET_IP 4261 IPv4' '$NVMF_TARGET_IP:4261' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts create \
nqn.2014-08.org.spdk:cnode1" "nqn.2014-08.org.spdk:cnode1" True nqn.2014-08.org.spdk:cnode1' 'nqn.2014-08.org.spdk:cnode1' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts create \ '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts create \
nqn.2014-08.org.spdk:cnode2" "nqn.2014-08.org.spdk:cnode2" True nqn.2014-08.org.spdk:cnode2' 'nqn.2014-08.org.spdk:cnode2' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1 allow_any_host True" "Allow any host" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1 allow_any_host True' 'Allow any host'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1 allow_any_host False" "Allow any host" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1 allow_any_host False' 'Allow any host' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create RDMA $NVMF_TARGET_IP 4261 IPv4" "$NVMF_TARGET_IP:4261" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create RDMA $NVMF_TARGET_IP 4261 IPv4' '$NVMF_TARGET_IP:4261' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create RDMA $NVMF_TARGET_IP 4262 IPv4" "$NVMF_TARGET_IP:4262" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses create RDMA $NVMF_TARGET_IP 4262 IPv4' '$NVMF_TARGET_IP:4262' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/hosts create nqn.2014-08.org.spdk:cnode2" "nqn.2014-08.org.spdk:cnode2" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/hosts create nqn.2014-08.org.spdk:cnode2' 'nqn.2014-08.org.spdk:cnode2' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc5" "Malloc5" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc5' 'Malloc5' True
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc6" "Malloc6" True '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces create Malloc6' 'Malloc6' True
"
timing_exit spdkcli_create_nvmf_config timing_exit spdkcli_create_nvmf_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -62,20 +63,21 @@ check_match
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_clear_nvmf_config timing_enter spdkcli_clear_nvmf_config
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces delete nsid=1" "Malloc3" $spdkcli_job "'/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces delete nsid=1' 'Malloc3'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces delete_all" "Malloc4" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/namespaces delete_all' 'Malloc4'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/hosts delete nqn.2014-08.org.spdk:cnode2" "nqn.2014-08.org.spdk:cnode2" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/hosts delete nqn.2014-08.org.spdk:cnode2' 'nqn.2014-08.org.spdk:cnode2'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts delete_all" "nqn.2014-08.org.spdk:cnode1" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode3/hosts delete_all' 'nqn.2014-08.org.spdk:cnode1'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses delete RDMA $NVMF_TARGET_IP 4262" "$NVMF_TARGET_IP:4262" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses delete RDMA $NVMF_TARGET_IP 4262' '$NVMF_TARGET_IP:4262'
$spdkcli_job "/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses delete_all" "$NVMF_TARGET_IP:4261" '/nvmf/subsystem/nqn.2014-08.org.spdk:cnode1/listen_addresses delete_all' '$NVMF_TARGET_IP:4261'
$spdkcli_job "/nvmf/subsystem delete nqn.2014-08.org.spdk:cnode3" "nqn.2014-08.org.spdk:cnode3" '/nvmf/subsystem delete nqn.2014-08.org.spdk:cnode3' 'nqn.2014-08.org.spdk:cnode3'
$spdkcli_job "/nvmf/subsystem delete_all" "nqn.2014-08.org.spdk:cnode2" '/nvmf/subsystem delete_all' 'nqn.2014-08.org.spdk:cnode2'
$spdkcli_job "/bdevs/malloc delete Malloc6" "Malloc6" '/bdevs/malloc delete Malloc6' 'Malloc6'
$spdkcli_job "/bdevs/malloc delete Malloc5" "Malloc5" '/bdevs/malloc delete Malloc5' 'Malloc5'
$spdkcli_job "/bdevs/malloc delete Malloc4" "Malloc4" '/bdevs/malloc delete Malloc4' 'Malloc4'
$spdkcli_job "/bdevs/malloc delete Malloc3" "Malloc3" '/bdevs/malloc delete Malloc3' 'Malloc3'
$spdkcli_job "/bdevs/malloc delete Malloc2" "Malloc2" '/bdevs/malloc delete Malloc2' 'Malloc2'
$spdkcli_job "/bdevs/malloc delete Malloc1" "Malloc1" '/bdevs/malloc delete Malloc1' 'Malloc1'
"
timing_exit spdkcli_clear_nvmf_config timing_exit spdkcli_clear_nvmf_config
killprocess $spdk_tgt_pid killprocess $spdk_tgt_pid

View File

@ -14,10 +14,11 @@ run_spdk_tgt
timing_exit run_spdk_tgt timing_exit run_spdk_tgt
timing_enter spdkcli_create_pmem_config timing_enter spdkcli_create_pmem_config
$spdkcli_job "/bdevs/pmemblk create_pmem_pool /tmp/sample_pmem0 32 512" "" True $spdkcli_job "'/bdevs/pmemblk create_pmem_pool /tmp/sample_pmem0 32 512' '' True
$spdkcli_job "/bdevs/pmemblk create /tmp/sample_pmem0 pmem_bdev0" "pmem_bdev0" True '/bdevs/pmemblk create /tmp/sample_pmem0 pmem_bdev0' 'pmem_bdev0' True
$spdkcli_job "/bdevs/pmemblk create_pmem_pool /tmp/sample_pmem1 32 512" "" True '/bdevs/pmemblk create_pmem_pool /tmp/sample_pmem1 32 512' '' True
$spdkcli_job "/bdevs/pmemblk create /tmp/sample_pmem1 pmem_bdev1" "pmem_bdev1" True '/bdevs/pmemblk create /tmp/sample_pmem1 pmem_bdev1' 'pmem_bdev1' True
"
timing_exit spdkcli_create_pmem_config timing_exit spdkcli_create_pmem_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -25,10 +26,11 @@ check_match
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_clear_pmem_config timing_enter spdkcli_clear_pmem_config
$spdkcli_job "/bdevs/pmemblk delete pmem_bdev0" "pmem_bdev0" $spdkcli_job "'/bdevs/pmemblk delete pmem_bdev0' 'pmem_bdev0'
$spdkcli_job "/bdevs/pmemblk delete_pmem_pool /tmp/sample_pmem0" "" '/bdevs/pmemblk delete_pmem_pool /tmp/sample_pmem0' ''
$spdkcli_job "/bdevs/pmemblk delete_all" "pmem_bdev1" '/bdevs/pmemblk delete_all' 'pmem_bdev1'
$spdkcli_job "/bdevs/pmemblk delete_pmem_pool /tmp/sample_pmem1" "" '/bdevs/pmemblk delete_pmem_pool /tmp/sample_pmem1' ''
"
rm -f /tmp/sample_pmem rm -f /tmp/sample_pmem
timing_exit spdkcli_clear_pmem_config timing_exit spdkcli_clear_pmem_config

View File

@ -17,8 +17,9 @@ trap 'rbd_cleanup; on_error_exit' ERR
rootdir=$(readlink -f $SPDKCLI_BUILD_DIR) rootdir=$(readlink -f $SPDKCLI_BUILD_DIR)
rbd_cleanup rbd_cleanup
rbd_setup 127.0.0.1 rbd_setup 127.0.0.1
$spdkcli_job "/bdevs/rbd create rbd foo 512" "Ceph0" True $spdkcli_job "'/bdevs/rbd create rbd foo 512' 'Ceph0' True
$spdkcli_job "/bdevs/rbd create rbd foo 512" "Ceph1" True '/bdevs/rbd create rbd foo 512' 'Ceph1' True
"
timing_exit spdkcli_create_rbd_config timing_exit spdkcli_create_rbd_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -26,8 +27,9 @@ check_match
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_clear_rbd_config timing_enter spdkcli_clear_rbd_config
$spdkcli_job "/bdevs/rbd delete Ceph0" "Ceph0" $spdkcli_job "\"/bdevs/rbd delete Ceph0' 'Ceph0'
$spdkcli_job "/bdevs/rbd delete_all" "Ceph1" '/bdevs/rbd delete_all' 'Ceph1'
"
rbd_cleanup rbd_cleanup
timing_exit spdkcli_clear_rbd_config timing_exit spdkcli_clear_rbd_config

View File

@ -2,6 +2,7 @@
import pexpect import pexpect
import os import os
import sys import sys
import re
def execute_command(cmd, element=None, element_exists=False): def execute_command(cmd, element=None, element_exists=False):
@ -27,12 +28,26 @@ def execute_command(cmd, element=None, element_exists=False):
if __name__ == "__main__": if __name__ == "__main__":
socket = "/var/tmp/spdk.sock" socket = "/var/tmp/spdk.sock"
if len(sys.argv) == 5: if len(sys.argv) == 3:
socket = sys.argv[4] socket = sys.argv[2]
testdir = os.path.dirname(os.path.realpath(sys.argv[0])) testdir = os.path.dirname(os.path.realpath(sys.argv[0]))
child = pexpect.spawn(os.path.join(testdir, "../../scripts/spdkcli.py") + " -s %s" % socket) child = pexpect.spawn(os.path.join(testdir, "../../scripts/spdkcli.py") + " -s %s" % socket)
child.expect(">") child.expect(">")
child.sendline("cd /") child.sendline("cd /")
child.expect("/>") child.expect("/>")
execute_command(*sys.argv[1:4]) cmd_lines = sys.argv[1].strip().split("\n")
for line in cmd_lines:
data = line.strip()
p = re.compile('\'(.*?)\'')
cmd = p.findall(data)
if data[-1] != "\'":
cmd.append(data.rsplit(" ", 1)[1].strip())
if cmd[-1] == "False":
cmd[-1] = False
else:
cmd[-1] = True
else:
cmd.append(False)
print("Executing command: %s" % cmd)
execute_command(*cmd[0:3])

View File

@ -9,47 +9,52 @@ testdir=$(readlink -f $(dirname $0))
timing_enter spdk_cli_vhost timing_enter spdk_cli_vhost
trap 'on_error_exit' ERR trap 'on_error_exit' ERR
timing_enter run_spdk_tgt timing_enter run_vhost_tgt
run_spdk_tgt run_spdk_tgt
timing_exit run_spdk_tgt timing_exit run_vhost_tgt
timing_enter spdkcli_create_bdevs_config timing_enter spdkcli_create_bdevs_config
$spdkcli_job "/bdevs/malloc create 40 512 Malloc0" "Malloc0" True $spdkcli_job "'/bdevs/malloc create 40 512 Malloc0' 'Malloc0' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc1" "Malloc1" True '/bdevs/malloc create 32 512 Malloc1' 'Malloc1' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc2" "Malloc2" True '/bdevs/malloc create 32 512 Malloc2' 'Malloc2' True
$spdkcli_job "/bdevs/malloc create 32 4096 Malloc3" "Malloc3" True '/bdevs/malloc create 32 4096 Malloc3' 'Malloc3' True
$spdkcli_job "/bdevs/malloc create 32 4096 Malloc4" "Malloc4" True '/bdevs/malloc create 32 4096 Malloc4' 'Malloc4' True
$spdkcli_job "/bdevs/malloc create 32 4096 Malloc5" "Malloc5" True '/bdevs/malloc create 32 4096 Malloc5' 'Malloc5' True
$spdkcli_job "/bdevs/error create Malloc1" "EE_Malloc1" True '/bdevs/error create Malloc1' 'EE_Malloc1' True
$spdkcli_job "/bdevs/error create Malloc4" "EE_Malloc4" True '/bdevs/error create Malloc4' 'EE_Malloc4' True
$spdkcli_job "/bdevs/null create null_bdev0 32 512" "null_bdev0" True '/bdevs/null create null_bdev0 32 512' 'null_bdev0' True
$spdkcli_job "/bdevs/null create null_bdev1 32 512" "null_bdev1" True '/bdevs/null create null_bdev1 32 512' 'null_bdev1' True
"
dd if=/dev/zero of=/tmp/sample_aio bs=2048 count=5000 dd if=/dev/zero of=/tmp/sample_aio bs=2048 count=5000
dd if=/dev/zero of=/tmp/sample_aio2 bs=2048 count=5000 dd if=/dev/zero of=/tmp/sample_aio2 bs=2048 count=5000
$spdkcli_job "/bdevs/aio create sample0 /tmp/sample_aio 512" "sample0" True $spdkcli_job "'/bdevs/aio create sample0 /tmp/sample_aio 512' 'sample0' True
$spdkcli_job "/bdevs/aio create sample1 /tmp/sample_aio2 512" "sample1" True '/bdevs/aio create sample1 /tmp/sample_aio2 512' 'sample1' True
"
trtype=$($SPDKCLI_BUILD_DIR/scripts/gen_nvme.sh --json | jq -r '.config[].params | select(.name=="Nvme0").trtype') trtype=$($SPDKCLI_BUILD_DIR/scripts/gen_nvme.sh --json | jq -r '.config[].params | select(.name=="Nvme0").trtype')
traddr=$($SPDKCLI_BUILD_DIR/scripts/gen_nvme.sh --json | jq -r '.config[].params | select(.name=="Nvme0").traddr') traddr=$($SPDKCLI_BUILD_DIR/scripts/gen_nvme.sh --json | jq -r '.config[].params | select(.name=="Nvme0").traddr')
$spdkcli_job "/bdevs/nvme create Nvme0 $trtype $traddr" "Nvme0" True $spdkcli_job "'/bdevs/nvme create Nvme0 $trtype $traddr' 'Nvme0' True
$spdkcli_job "/bdevs/split_disk split_bdev Nvme0n1 4" "Nvme0n1p0" True '/bdevs/split_disk split_bdev Nvme0n1 4' 'Nvme0n1p0' True
"
timing_exit spdkcli_create_bdevs_config timing_exit spdkcli_create_bdevs_config
timing_enter spdkcli_create_lvols_config timing_enter spdkcli_create_lvols_config
$spdkcli_job "/lvol_stores create lvs0 Malloc0" "lvs0" True $spdkcli_job "'/lvol_stores create lvs0 Malloc0' 'lvs0' True
$spdkcli_job "/lvol_stores create lvs1 Malloc5" "lvs1" True '/lvol_stores create lvs1 Malloc5' 'lvs1' True
$spdkcli_job "/bdevs/logical_volume create lvol0 16 lvs0" "lvs0/lvol0" True '/bdevs/logical_volume create lvol0 16 lvs0' 'lvs0/lvol0' True
$spdkcli_job "/bdevs/logical_volume create lvol1 16 lvs0" "lvs0/lvol1" True '/bdevs/logical_volume create lvol1 16 lvs0' 'lvs0/lvol1' True
"
timing_exit spdkcli_create_lvols_config timing_exit spdkcli_create_lvols_config
timing_enter spdkcli_create_vhosts_config timing_enter spdkcli_create_vhosts_config
$spdkcli_job "vhost/block create vhost_blk1 Nvme0n1p0" "Nvme0n1p0" True $spdkcli_job "'vhost/block create vhost_blk1 Nvme0n1p0' 'Nvme0n1p0' True
$spdkcli_job "vhost/block create vhost_blk2 Nvme0n1p1 0x1 readonly" "Nvme0n1p1" True 'vhost/block create vhost_blk2 Nvme0n1p1 0x1 readonly' 'Nvme0n1p1' True
$spdkcli_job "vhost/scsi create vhost_scsi1" "vhost_scsi1" True 'vhost/scsi create vhost_scsi1' 'vhost_scsi1' True
$spdkcli_job "vhost/scsi create vhost_scsi2" "vhost_scsi2" True 'vhost/scsi create vhost_scsi2' 'vhost_scsi2' True
$spdkcli_job "vhost/scsi/vhost_scsi1 add_lun 0 Malloc2" "Malloc2" True 'vhost/scsi/vhost_scsi1 add_lun 0 Malloc2' 'Malloc2' True
$spdkcli_job "vhost/scsi/vhost_scsi2 add_lun 0 Malloc3" "Malloc3" True 'vhost/scsi/vhost_scsi2 add_lun 0 Malloc3' 'Malloc3' True
$spdkcli_job "vhost/scsi/vhost_scsi2 add_lun 1 Nvme0n1p2" "Nvme0n1p2" True 'vhost/scsi/vhost_scsi2 add_lun 1 Nvme0n1p2' 'Nvme0n1p2' True
$spdkcli_job "vhost/scsi/vhost_scsi2 add_lun 2 Nvme0n1p3" "Nvme0n1p3" True 'vhost/scsi/vhost_scsi2 add_lun 2 Nvme0n1p3' 'Nvme0n1p3' True
"
timing_exit spdkcli_create_vhosts_config timing_exit spdkcli_create_vhosts_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -57,9 +62,10 @@ check_match
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_save_config timing_enter spdkcli_save_config
$spdkcli_job "save_config $testdir/config.json" $spdkcli_job "'save_config $testdir/config.json'
$spdkcli_job "save_subsystem_config $testdir/config_bdev.json bdev" 'save_subsystem_config $testdir/config_bdev.json bdev'
$spdkcli_job "save_subsystem_config $testdir/config_vhost.json vhost" 'save_subsystem_config $testdir/config_vhost.json vhost'
"
timing_exit spdkcli_save_config timing_exit spdkcli_save_config
timing_enter spdkcli_check_match_details timing_enter spdkcli_check_match_details
@ -69,47 +75,51 @@ rm -f $testdir/match_files/spdkcli_details_vhost.test
timing_exit spdkcli_check_match_details timing_exit spdkcli_check_match_details
timing_enter spdkcli_clear_config timing_enter spdkcli_clear_config
$spdkcli_job "vhost/scsi/vhost_scsi2 remove_target 2" "Nvme0n1p3" $spdkcli_job "'vhost/scsi/vhost_scsi2 remove_target 2' 'Nvme0n1p3'
$spdkcli_job "vhost/scsi/vhost_scsi2 remove_target 1" "Nvme0n1p2" 'vhost/scsi/vhost_scsi2 remove_target 1' 'Nvme0n1p2'
$spdkcli_job "vhost/scsi/vhost_scsi2 remove_target 0" "Malloc3" 'vhost/scsi/vhost_scsi2 remove_target 0' 'Malloc3'
$spdkcli_job "vhost/scsi/vhost_scsi1 remove_target 0" "Malloc2" 'vhost/scsi/vhost_scsi1 remove_target 0' 'Malloc2'
$spdkcli_job "vhost/scsi delete vhost_scsi2" "vhost_scsi2" 'vhost/scsi delete vhost_scsi2' 'vhost_scsi2'
$spdkcli_job "vhost/scsi delete vhost_scsi1" "vhost_scsi1" 'vhost/scsi delete vhost_scsi1' 'vhost_scsi1'
$spdkcli_job "vhost/block delete vhost_blk2" "vhost_blk2" 'vhost/block delete vhost_blk2' 'vhost_blk2'
$spdkcli_job "vhost/block delete vhost_blk1" "vhost_blk1" 'vhost/block delete vhost_blk1' 'vhost_blk1'
$spdkcli_job "/bdevs/split_disk destruct_split_bdev Nvme0n1" "Nvme0n1p0" '/bdevs/split_disk destruct_split_bdev Nvme0n1' 'Nvme0n1p0'
$spdkcli_job "/bdevs/aio delete sample0" "sample0" '/bdevs/aio delete sample0' 'sample0'
$spdkcli_job "/bdevs/aio delete_all" "sample1" '/bdevs/aio delete_all' 'sample1'
$spdkcli_job "/bdevs/nvme delete Nvme0" "Nvme0" '/bdevs/nvme delete Nvme0' 'Nvme0'
$spdkcli_job "/bdevs/null delete null_bdev0" "null_bdev0" '/bdevs/null delete null_bdev0' 'null_bdev0'
$spdkcli_job "/bdevs/null delete_all" "null_bdev1" '/bdevs/null delete_all' 'null_bdev1'
$spdkcli_job "/bdevs/logical_volume delete lvs0/lvol0" "lvs0/lvol0" '/bdevs/logical_volume delete lvs0/lvol0' 'lvs0/lvol0'
$spdkcli_job "/bdevs/logical_volume delete_all" "lvs0/lvol1" '/bdevs/logical_volume delete_all' 'lvs0/lvol1'
$spdkcli_job "/lvol_stores delete lvs0" "lvs0" '/lvol_stores delete lvs0' 'lvs0'
$spdkcli_job "/lvol_stores delete_all" "lvs1" '/lvol_stores delete_all' 'lvs1'
$spdkcli_job "/bdevs/error delete EE_Malloc1" "EE_Malloc1" '/bdevs/error delete EE_Malloc1' 'EE_Malloc1'
$spdkcli_job "/bdevs/error delete_all" "EE_Malloc4" '/bdevs/error delete_all' 'EE_Malloc4'
$spdkcli_job "/bdevs/malloc delete Malloc0" "Malloc0" '/bdevs/malloc delete Malloc0' 'Malloc0'
$spdkcli_job "/bdevs/malloc delete_all" "Malloc1" '/bdevs/malloc delete_all' 'Malloc1'
"
timing_exit spdkcli_clear_config timing_exit spdkcli_clear_config
timing_enter spdkcli_load_config timing_enter spdkcli_load_config
$spdkcli_job "load_config $testdir/config.json" $spdkcli_job "'load_config $testdir/config.json'
$spdkcli_job "/lvol_stores create lvs0 Malloc0" "lvs0" True '/lvol_stores create lvs0 Malloc0' 'lvs0' True
$spdkcli_job "/lvol_stores create lvs1 Malloc5" "lvs1" True '/lvol_stores create lvs1 Malloc5' 'lvs1' True
$spdkcli_job "/bdevs/logical_volume create lvol0 16 lvs0" "lvs0/lvol0" True '/bdevs/logical_volume create lvol0 16 lvs0' 'lvs0/lvol0' True
$spdkcli_job "/bdevs/logical_volume create lvol1 16 lvs0" "lvs0/lvol1" True '/bdevs/logical_volume create lvol1 16 lvs0' 'lvs0/lvol1' True
"
check_match check_match
$spdk_clear_config_py clear_config $spdk_clear_config_py clear_config
# FIXME: remove this sleep when NVMe driver will be fixed to wait for reset to complete # FIXME: remove this sleep when NVMe driver will be fixed to wait for reset to complete
sleep 2 sleep 2
$spdkcli_job "load_subsystem_config $testdir/config_bdev.json" $spdkcli_job "'load_subsystem_config $testdir/config_bdev.json'
$spdkcli_job "load_subsystem_config $testdir/config_vhost.json" 'load_subsystem_config $testdir/config_vhost.json'
$spdkcli_job "/lvol_stores create lvs0 Malloc0" "lvs0" True '/lvol_stores create lvs0 Malloc0' 'lvs0' True
$spdkcli_job "/lvol_stores create lvs1 Malloc5" "lvs1" True '/lvol_stores create lvs1 Malloc5' 'lvs1' True
$spdkcli_job "/bdevs/logical_volume create lvol0 16 lvs0" "lvs0/lvol0" True '/bdevs/logical_volume create lvol0 16 lvs0' 'lvs0/lvol0' True
$spdkcli_job "/bdevs/logical_volume create lvol1 16 lvs0" "lvs0/lvol1" True '/bdevs/logical_volume create lvol1 16 lvs0' 'lvs0/lvol1' True
"
check_match check_match
$spdk_clear_config_py clear_config
rm -f $testdir/config.json rm -f $testdir/config.json
rm -f $testdir/config_bdev.json rm -f $testdir/config_bdev.json
rm -f $testdir/config_vhost.json rm -f $testdir/config_vhost.json

View File

@ -18,19 +18,21 @@ waitforlisten $virtio_pid /var/tmp/virtio.sock
timing_exit run_spdk_virtio timing_exit run_spdk_virtio
timing_enter spdkcli_create_virtio_pci_config timing_enter spdkcli_create_virtio_pci_config
$spdkcli_job "/bdevs/malloc create 32 512 Malloc0" "Malloc0" True $spdkcli_job "'/bdevs/malloc create 32 512 Malloc0' 'Malloc0' True
$spdkcli_job "/bdevs/malloc create 32 512 Malloc1" "Malloc1" True '/bdevs/malloc create 32 512 Malloc1' 'Malloc1' True
"
pci_blk=$(lspci -nn -D | grep '1af4:1001' | head -1 | awk '{print $1;}') pci_blk=$(lspci -nn -D | grep '1af4:1001' | head -1 | awk '{print $1;}')
if [ ! -z $pci_blk ]; then if [ ! -z $pci_blk ]; then
$spdkcli_job "/bdevs/virtioblk_disk create virtioblk_pci pci $pci_blk" "virtioblk_pci" True $spdkcli_job "'/bdevs/virtioblk_disk create virtioblk_pci pci $pci_blk' 'virtioblk_pci' True"
fi fi
pci_scsi=$(lspci -nn -D | grep '1af4:1004' | head -1 | awk '{print $1;}') pci_scsi=$(lspci -nn -D | grep '1af4:1004' | head -1 | awk '{print $1;}')
if [ ! -z $pci_scsi ]; then if [ ! -z $pci_scsi ]; then
$spdkcli_job "/bdevs/virtioscsi_disk create virtioscsi_pci pci $pci_scsi" "virtioscsi_pci" True $spdkcli_job "'/bdevs/virtioscsi_disk create virtioscsi_pci pci $pci_scsi' 'virtioscsi_pci' True"
fi fi
$spdkcli_job "/vhost/scsi create sample_scsi" "sample_scsi" True $spdkcli_job "'/vhost/scsi create sample_scsi' 'sample_scsi' True
$spdkcli_job "/vhost/scsi/sample_scsi add_lun 0 Malloc0" "Malloc0" True '/vhost/scsi/sample_scsi add_lun 0 Malloc0' 'Malloc0' True
$spdkcli_job "/vhost/block create sample_block Malloc1" "Malloc1" True '/vhost/block create sample_block Malloc1' 'Malloc1' True
"
timing_exit spdkcli_create_virtio_pci_config timing_exit spdkcli_create_virtio_pci_config
timing_enter spdkcli_check_match timing_enter spdkcli_check_match
@ -42,8 +44,9 @@ fi
timing_exit spdkcli_check_match timing_exit spdkcli_check_match
timing_enter spdkcli_create_virtio_user_config timing_enter spdkcli_create_virtio_user_config
$spdkcli_job "/bdevs/virtioblk_disk create virtioblk_user user $testdir/../../sample_block" "virtioblk_user" True "/var/tmp/virtio.sock" $spdkcli_job "'/bdevs/virtioblk_disk create virtioblk_user user $testdir/../../sample_block' 'virtioblk_user' True
$spdkcli_job "/bdevs/virtioscsi_disk create virtioscsi_user user $testdir/../../sample_scsi" "virtioscsi_user" True "/var/tmp/virtio.sock" '/bdevs/virtioscsi_disk create virtioscsi_user user $testdir/../../sample_scsi' 'virtioscsi_user' True
" /var/tmp/virtio.sock
timing_exit spdkcli_create_virtio_user_config timing_exit spdkcli_create_virtio_user_config
timing_enter spdkcli_check_match_user_config timing_enter spdkcli_check_match_user_config
@ -53,19 +56,22 @@ check_match
timing_exit spdkcli_check_match_user_config timing_exit spdkcli_check_match_user_config
timing_enter spdkcli_clear_virtio_config timing_enter spdkcli_clear_virtio_config
$spdkcli_job "/bdevs/virtioscsi_disk delete virtioscsi_user" "" False "/var/tmp/virtio.sock" $spdkcli_job "'/bdevs/virtioscsi_disk delete virtioscsi_user' '' False
$spdkcli_job "/bdevs/virtioblk_disk delete virtioblk_user" "" False "/var/tmp/virtio.sock" '/bdevs/virtioblk_disk delete virtioblk_user' '' False
$spdkcli_job "/vhost/block delete sample_block" "sample_block" " /var/tmp/virtio.sock
$spdkcli_job "/vhost/scsi/sample_scsi remove_target 0" "Malloc0" $spdkcli_job "'/vhost/block delete sample_block' 'sample_block'
$spdkcli_job "/vhost/scsi delete sample_scsi" " sample_scsi" '/vhost/scsi/sample_scsi remove_target 0' 'Malloc0'
'/vhost/scsi delete sample_scsi' 'sample_scsi'
"
if [ ! -z $pci_blk ]; then if [ ! -z $pci_blk ]; then
$spdkcli_job "/bdevs/virtioblk_disk delete virtioblk_pci" "virtioblk_pci" $spdkcli_job "'/bdevs/virtioblk_disk delete virtioblk_pci' 'virtioblk_pci'"
fi fi
if [ ! -z $pci_scsi ]; then if [ ! -z $pci_scsi ]; then
$spdkcli_job "/bdevs/virtioscsi_disk delete virtioscsi_pci" "virtioscsi_pci" $spdkcli_job "'/bdevs/virtioscsi_disk delete virtioscsi_pci' 'virtioscsi_pci'"
fi fi
$spdkcli_job "/bdevs/malloc delete Malloc0" "Malloc0" $spdkcli_job "'/bdevs/malloc delete Malloc0' 'Malloc0'
$spdkcli_job "/bdevs/malloc delete Malloc1" "Malloc1" '/bdevs/malloc delete Malloc1' 'Malloc1'
"
timing_exit spdkcli_clear_virtio_config timing_exit spdkcli_clear_virtio_config
killprocess $virtio_pid killprocess $virtio_pid