test/iscsi: allow choosing net framework for iSCSI tests
Type of net framework is now passed throughout the iSCSI tests. This is in preparation for running VPP tests alongside the ones on posix. Change-Id: Ifb25a9e4b04512de882883278b8bb465de579828 Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Reviewed-on: https://review.gerrithub.io/408879 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
parent
7a02938bac
commit
19dd8ea576
@ -120,7 +120,7 @@ fi
|
|||||||
timing_exit lib
|
timing_exit lib
|
||||||
|
|
||||||
if [ $SPDK_TEST_ISCSI -eq 1 ]; then
|
if [ $SPDK_TEST_ISCSI -eq 1 ]; then
|
||||||
run_test ./test/iscsi_tgt/iscsi_tgt.sh
|
run_test ./test/iscsi_tgt/iscsi_tgt.sh posix
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $SPDK_TEST_BLOBFS -eq 1 ]; then
|
if [ $SPDK_TEST_BLOBFS -eq 1 ]; then
|
||||||
|
@ -16,10 +16,11 @@ ISCSI_APP="$TARGET_NS_CMD ./app/iscsi_tgt/iscsi_tgt -i 0"
|
|||||||
ISCSI_TEST_CORE_MASK=0xFF
|
ISCSI_TEST_CORE_MASK=0xFF
|
||||||
|
|
||||||
function create_veth_interfaces() {
|
function create_veth_interfaces() {
|
||||||
|
# $1 = test type (posix/vpp)
|
||||||
ip netns del $TARGET_NAMESPACE || true
|
ip netns del $TARGET_NAMESPACE || true
|
||||||
ip link delete $INITIATOR_INTERFACE || true
|
ip link delete $INITIATOR_INTERFACE || true
|
||||||
|
|
||||||
trap "cleanup_veth_interfaces; exit 1" SIGINT SIGTERM EXIT
|
trap "cleanup_veth_interfaces $1; exit 1" SIGINT SIGTERM EXIT
|
||||||
|
|
||||||
# Create veth (Virtual ethernet) interface pair
|
# Create veth (Virtual ethernet) interface pair
|
||||||
ip link add $INITIATOR_INTERFACE type veth peer name $TARGET_INTERFACE
|
ip link add $INITIATOR_INTERFACE type veth peer name $TARGET_INTERFACE
|
||||||
@ -40,6 +41,8 @@ function create_veth_interfaces() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function cleanup_veth_interfaces() {
|
function cleanup_veth_interfaces() {
|
||||||
|
# $1 = test type (posix/vpp)
|
||||||
|
|
||||||
# Cleanup veth interfaces and network namespace
|
# Cleanup veth interfaces and network namespace
|
||||||
# Note: removing one veth, removes the pair
|
# Note: removing one veth, removes the pair
|
||||||
ip link delete $INITIATOR_INTERFACE
|
ip link delete $INITIATOR_INTERFACE
|
||||||
|
@ -11,8 +11,16 @@ source $rootdir/test/iscsi_tgt/common.sh
|
|||||||
|
|
||||||
timing_enter iscsi_tgt
|
timing_enter iscsi_tgt
|
||||||
|
|
||||||
|
# $1 = test type (posix/vpp)
|
||||||
|
if [ "$1" == "posix" ] || [ "$1" == "vpp" ]; then
|
||||||
|
TEST_TYPE=$1
|
||||||
|
else
|
||||||
|
echo "No iSCSI test type specified"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Network configuration
|
# Network configuration
|
||||||
create_veth_interfaces
|
create_veth_interfaces $TEST_TYPE
|
||||||
|
|
||||||
# ISCSI_TEST_CORE_MASK is the biggest core mask specified by
|
# ISCSI_TEST_CORE_MASK is the biggest core mask specified by
|
||||||
# any of the iscsi_tgt tests. Using this mask for the stub
|
# any of the iscsi_tgt tests. Using this mask for the stub
|
||||||
@ -22,12 +30,12 @@ create_veth_interfaces
|
|||||||
# core 0) so there is no impact to the iscsi_tgt tests by
|
# core 0) so there is no impact to the iscsi_tgt tests by
|
||||||
# specifying the bigger core mask.
|
# specifying the bigger core mask.
|
||||||
start_stub "-s 2048 -i 0 -m $ISCSI_TEST_CORE_MASK"
|
start_stub "-s 2048 -i 0 -m $ISCSI_TEST_CORE_MASK"
|
||||||
trap "kill_stub; cleanup_veth_interfaces; exit 1" SIGINT SIGTERM EXIT
|
trap "kill_stub; cleanup_veth_interfaces $TEST_TYPE; exit 1" SIGINT SIGTERM EXIT
|
||||||
|
|
||||||
run_test ./test/iscsi_tgt/calsoft/calsoft.sh
|
run_test ./test/iscsi_tgt/calsoft/calsoft.sh
|
||||||
run_test ./test/iscsi_tgt/filesystem/filesystem.sh
|
run_test ./test/iscsi_tgt/filesystem/filesystem.sh
|
||||||
run_test ./test/iscsi_tgt/reset/reset.sh
|
run_test ./test/iscsi_tgt/reset/reset.sh
|
||||||
run_test ./test/iscsi_tgt/rpc_config/rpc_config.sh
|
run_test ./test/iscsi_tgt/rpc_config/rpc_config.sh $TEST_TYPE
|
||||||
run_test ./test/iscsi_tgt/lvol/iscsi_lvol.sh
|
run_test ./test/iscsi_tgt/lvol/iscsi_lvol.sh
|
||||||
run_test ./test/iscsi_tgt/fio/fio.sh
|
run_test ./test/iscsi_tgt/fio/fio.sh
|
||||||
run_test ./test/iscsi_tgt/qos/qos.sh
|
run_test ./test/iscsi_tgt/qos/qos.sh
|
||||||
@ -44,7 +52,7 @@ if [ $SPDK_TEST_RBD -eq 1 ]; then
|
|||||||
run_test ./test/iscsi_tgt/rbd/rbd.sh
|
run_test ./test/iscsi_tgt/rbd/rbd.sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
trap "cleanup_veth_interfaces; exit 1" SIGINT SIGTERM EXIT
|
trap "cleanup_veth_interfaces $TEST_TYPE; exit 1" SIGINT SIGTERM EXIT
|
||||||
kill_stub
|
kill_stub
|
||||||
|
|
||||||
if [ $SPDK_TEST_NVMF -eq 1 ]; then
|
if [ $SPDK_TEST_NVMF -eq 1 ]; then
|
||||||
@ -62,6 +70,6 @@ if [ $SPDK_TEST_ISCSI_INITIATOR -eq 1 ]; then
|
|||||||
run_test ./test/iscsi_tgt/initiator/initiator.sh
|
run_test ./test/iscsi_tgt/initiator/initiator.sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cleanup_veth_interfaces
|
cleanup_veth_interfaces $TEST_TYPE
|
||||||
trap - SIGINT SIGTERM EXIT
|
trap - SIGINT SIGTERM EXIT
|
||||||
timing_exit iscsi_tgt
|
timing_exit iscsi_tgt
|
||||||
|
@ -10,12 +10,13 @@ import json
|
|||||||
import random
|
import random
|
||||||
from subprocess import check_call, call, check_output, Popen, PIPE, CalledProcessError
|
from subprocess import check_call, call, check_output, Popen, PIPE, CalledProcessError
|
||||||
|
|
||||||
if (len(sys.argv) == 7):
|
if (len(sys.argv) == 8):
|
||||||
target_ip = sys.argv[2]
|
target_ip = sys.argv[2]
|
||||||
initiator_ip = sys.argv[3]
|
initiator_ip = sys.argv[3]
|
||||||
port = sys.argv[4]
|
port = sys.argv[4]
|
||||||
netmask = sys.argv[5]
|
netmask = sys.argv[5]
|
||||||
namespace = sys.argv[6]
|
namespace = sys.argv[6]
|
||||||
|
test_type = sys.argv[7]
|
||||||
|
|
||||||
ns_cmd = 'ip netns exec ' + namespace
|
ns_cmd = 'ip netns exec ' + namespace
|
||||||
other_ip = '127.0.0.6'
|
other_ip = '127.0.0.6'
|
||||||
|
@ -7,8 +7,15 @@ source $rootdir/test/iscsi_tgt/common.sh
|
|||||||
|
|
||||||
timing_enter rpc_config
|
timing_enter rpc_config
|
||||||
|
|
||||||
MALLOC_BDEV_SIZE=64
|
# $1 = test type (posix/vpp)
|
||||||
|
if [ "$1" == "posix" ] || [ "$1" == "vpp" ]; then
|
||||||
|
TEST_TYPE=$1
|
||||||
|
else
|
||||||
|
echo "No iSCSI test type specified"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
MALLOC_BDEV_SIZE=64
|
||||||
|
|
||||||
rpc_py=$rootdir/scripts/rpc.py
|
rpc_py=$rootdir/scripts/rpc.py
|
||||||
rpc_config_py="python $testdir/rpc_config.py"
|
rpc_config_py="python $testdir/rpc_config.py"
|
||||||
@ -26,7 +33,7 @@ echo "iscsi_tgt is listening. Running tests..."
|
|||||||
|
|
||||||
timing_exit start_iscsi_tgt
|
timing_exit start_iscsi_tgt
|
||||||
|
|
||||||
$rpc_config_py $rpc_py $TARGET_IP $INITIATOR_IP $ISCSI_PORT $NETMASK $TARGET_NAMESPACE
|
$rpc_config_py $rpc_py $TARGET_IP $INITIATOR_IP $ISCSI_PORT $NETMASK $TARGET_NAMESPACE $TEST_TYPE
|
||||||
|
|
||||||
$rpc_py get_bdevs
|
$rpc_py get_bdevs
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user