test/json: Tests for iscsi subsystems.
Change-Id: I7053dca9cc6f2ef09566ba2bf8338f7f4c92ebf0 Signed-off-by: Pawel Niedzwiecki <pawelx.niedzwiecki@intel.com> Reviewed-on: https://review.gerrithub.io/416745 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Pawel Kaminski <pawelx.kaminski@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.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:
parent
3181857bc7
commit
767202e3ac
@ -126,6 +126,7 @@ timing_exit lib
|
||||
|
||||
if [ $SPDK_TEST_ISCSI -eq 1 ]; then
|
||||
run_test ./test/iscsi_tgt/iscsi_tgt.sh posix
|
||||
run_test ./test/iscsi_tgt/iscsijson/json_config.sh
|
||||
fi
|
||||
|
||||
if [ $SPDK_TEST_BLOBFS -eq 1 ]; then
|
||||
|
43
test/iscsi_tgt/iscsijson/json_config.sh
Executable file
43
test/iscsi_tgt/iscsijson/json_config.sh
Executable file
@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env bash
|
||||
set -xe
|
||||
ISCSI_JSON_DIR=$(readlink -f $(dirname $0))
|
||||
. $ISCSI_JSON_DIR/../../json_config/common.sh
|
||||
. $JSON_DIR/../iscsi_tgt/common.sh
|
||||
base_iscsi_config=$JSON_DIR/base_iscsi_config.json
|
||||
last_iscsi_config=$JSON_DIR/last_iscsi_config.json
|
||||
rpc_py="$spdk_rpc_py"
|
||||
clear_config_py="$spdk_clear_config_py"
|
||||
trap 'on_error_exit "${FUNCNAME}" "${LINENO}"; rm -f $base_iscsi_config $last_iscsi_config' ERR
|
||||
|
||||
timing_enter iscsi_json_config
|
||||
run_spdk_tgt
|
||||
$rpc_py start_subsystem_init
|
||||
|
||||
timing_enter iscsi_json_config_create_setup
|
||||
$rpc_py add_portal_group $PORTAL_TAG 127.0.0.1:$ISCSI_PORT
|
||||
$rpc_py add_initiator_group $INITIATOR_TAG $INITIATOR_NAME $NETMASK
|
||||
$rpc_py construct_malloc_bdev 64 4096 --name Malloc0
|
||||
$rpc_py construct_target_node Target3 Target3_alias 'Malloc0:0' $PORTAL_TAG:$INITIATOR_TAG 64 -d
|
||||
$rpc_py save_config -f $base_iscsi_config
|
||||
timing_exit iscsi_json_config_create_setup
|
||||
|
||||
timing_enter iscsi_json_config_test
|
||||
test_json_config
|
||||
timing_exit iscsi_json_config_test
|
||||
|
||||
timing_enter iscsi_json_config_restart_spdk
|
||||
$clear_config_py clear_config
|
||||
kill_targets
|
||||
run_spdk_tgt
|
||||
$rpc_py load_config -f $base_iscsi_config
|
||||
$rpc_py save_config -f $last_iscsi_config
|
||||
timing_exit iscsi_json_config_restart_spdk
|
||||
|
||||
diff $base_iscsi_config $last_iscsi_config
|
||||
|
||||
$clear_config_py clear_config
|
||||
kill_targets
|
||||
rm -f $base_iscsi_config $last_iscsi_config
|
||||
|
||||
timing_exit iscsi_json_config
|
||||
report_test_completion iscsi_json_config
|
@ -100,12 +100,34 @@ def clear_nvmf_subsystem(args, nvmf_config):
|
||||
args.client.call(destroy_method, {'nqn': nvmf['params']['nqn']})
|
||||
|
||||
|
||||
def clear_scsi_subsystem(args, scsi_config):
|
||||
pass
|
||||
def get_iscsi_destroy_method(iscsi):
|
||||
destroy_method_map = {'add_portal_group': "delete_portal_group",
|
||||
'add_initiator_group': "delete_initiator_group",
|
||||
'construct_target_node': "delete_target_node",
|
||||
'set_iscsi_options': None
|
||||
}
|
||||
return destroy_method_map[iscsi['method']]
|
||||
|
||||
|
||||
def get_iscsi_name(iscsi):
|
||||
if 'name' in iscsi['params']:
|
||||
return iscsi['params']['name']
|
||||
else:
|
||||
return iscsi['params']['tag']
|
||||
|
||||
|
||||
def get_iscsi_name_key(iscsi):
|
||||
if iscsi['method'] == 'construct_target_node':
|
||||
return "name"
|
||||
else:
|
||||
return 'tag'
|
||||
|
||||
|
||||
def clear_iscsi_subsystem(args, iscsi_config):
|
||||
pass
|
||||
for iscsi in iscsi_config:
|
||||
destroy_method = get_iscsi_destroy_method(iscsi)
|
||||
if destroy_method:
|
||||
args.client.call(destroy_method, {get_iscsi_name_key(iscsi): get_iscsi_name(iscsi)})
|
||||
|
||||
|
||||
def clear_nbd_subsystem(args, scsi_config):
|
||||
|
Loading…
Reference in New Issue
Block a user