test/vhost: move fiotest functions to common directory
Move files from test/vhost/fiotest to test/vhost/common. Scripts and functions from fio tests will be re-used in any new test scripts. Change-Id: I2423d636d41dcb2b2af12987769961607e969392 Signed-off-by: Lukasz Galka <lukaszx.galka@intel.com> Reviewed-on: https://review.gerrithub.io/372545 Reviewed-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Karol Latecki <karol.latecki@intel.com> Reviewed-by: Pawel Kaminski <pawelx.kaminski@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
This commit is contained in:
parent
a604a70edd
commit
3d738d4569
@ -7,8 +7,8 @@ MAKE="make -j$(( $(nproc) * 2 ))"
|
||||
# Default running dir -> spdk/..
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR=$BASE_DIR/../../../../
|
||||
|
||||
COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
TEST_DIR="$(mkdir -p $TEST_DIR && cd $TEST_DIR && echo $PWD)"
|
||||
|
||||
SPDK_SRC_DIR=$TEST_DIR/spdk
|
||||
SPDK_BUILD_DIR=$BASE_DIR/../../../
|
||||
VHOST_APP=$SPDK_BUILD_DIR/app/vhost/vhost
|
||||
@ -39,7 +39,7 @@ INSTALL_DIR="$TEST_DIR/root"
|
||||
|
||||
mkdir -p $TEST_DIR
|
||||
|
||||
. $BASE_DIR/autotest.config
|
||||
. $COMMON_DIR/autotest.config
|
||||
|
||||
RPC_PORT=5260
|
||||
|
||||
@ -125,11 +125,13 @@ function spdk_build_and_install()
|
||||
|
||||
function spdk_vhost_run()
|
||||
{
|
||||
local vhost_conf_path="$1"
|
||||
local vhost_app="$SPDK_BUILD_DIR/app/vhost/vhost"
|
||||
local vhost_log_file="$SPDK_VHOST_SCSI_TEST_DIR/vhost.log"
|
||||
local vhost_pid_file="$SPDK_VHOST_SCSI_TEST_DIR/vhost.pid"
|
||||
local vhost_socket="$SPDK_VHOST_SCSI_TEST_DIR/usvhost"
|
||||
local vhost_conf_template="$BASE_DIR/vhost.conf.in"
|
||||
local vhost_conf_file="$BASE_DIR/vhost.conf"
|
||||
local vhost_conf_template="$vhost_conf_path/vhost.conf.in"
|
||||
local vhost_conf_file="$vhost_conf_path/vhost.conf"
|
||||
echo "INFO: starting vhost app in background"
|
||||
[[ -r "$vhost_pid_file" ]] && spdk_vhost_kill
|
||||
[[ -d $SPDK_VHOST_SCSI_TEST_DIR ]] && rm -f $SPDK_VHOST_SCSI_TEST_DIR/*
|
@ -159,7 +159,7 @@ def main():
|
||||
# VM - tuple of IP / Port / Filename for VM to run test
|
||||
print("Preparing VM {0} - {1} for FIO job".format(i, vm[0]))
|
||||
|
||||
exec_cmd("./test/vhost/fiotest/vm_ssh.sh {vm_num} sh -c 'rm {cfg}'"
|
||||
exec_cmd("./test/vhost/common/vm_ssh.sh {vm_num} sh -c 'rm {cfg}'"
|
||||
.format(vm_num=i, cfg=fio_cfg_fname), blocking=True)
|
||||
|
||||
# Copy FIO config to VM
|
||||
@ -167,7 +167,7 @@ def main():
|
||||
for line in fio_cfg_fh.readlines():
|
||||
if "filename" in line:
|
||||
line = "filename=" + vm[2]
|
||||
out = exec_cmd("./test/vhost/fiotest/vm_ssh.sh {vm_num} sh -c 'echo {line} >> {cfg}'"
|
||||
out = exec_cmd("./test/vhost/common/vm_ssh.sh {vm_num} sh -c 'echo {line} >> {cfg}'"
|
||||
.format(vm_num=i, line=line.strip(), cfg=fio_cfg_fname), blocking=True)
|
||||
if out[0] != 0:
|
||||
print("ERROR! While copying FIO job config file to VM {vm_num} - {vm_ip}"
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
function usage()
|
||||
@ -13,6 +14,7 @@ function usage()
|
||||
echo " --gdb Run app under gdb"
|
||||
echo " --gdbserver Run app under gdb-server"
|
||||
echo " --work-dir=PATH Where to find source/project. [default=$TEST_DIR]"
|
||||
echo " --conf-dir=PATH Path to directory with configuration for vhost"
|
||||
|
||||
exit 0
|
||||
}
|
||||
@ -27,6 +29,7 @@ while getopts 'xh-:' optchar; do
|
||||
gdbserver) VHOST_GDB="gdbserver 127.0.0.1:12345"
|
||||
;;
|
||||
work-dir=*) TEST_DIR="${OPTARG#*=}" ;;
|
||||
conf-dir=*) CONF_DIR="${OPTARG#*=}" ;;
|
||||
*) usage $0 echo "Invalid argument '$OPTARG'" ;;
|
||||
esac
|
||||
;;
|
||||
@ -44,7 +47,7 @@ fi
|
||||
echo "INFO: $0"
|
||||
echo
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
echo "INFO: Testing vhost command line arguments"
|
||||
# Printing help will force vhost to exit without error
|
||||
@ -68,4 +71,4 @@ if ! $VHOST_APP -t vhost_scsi -h; then
|
||||
fi
|
||||
|
||||
# Starting vhost with valid options
|
||||
spdk_vhost_run
|
||||
spdk_vhost_run $CONF_DIR
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
function usage()
|
||||
@ -32,7 +33,7 @@ while getopts 'xah-:' optchar; do
|
||||
esac
|
||||
done
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Go away user come back as root"
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
function usage()
|
||||
@ -64,7 +65,7 @@ while getopts 'xf:h-:' optchar; do
|
||||
esac
|
||||
done
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
[[ -z "$os" ]] && os="$TEST_DIR/debian.qcow2"
|
||||
[[ $test_type =~ "spdk_vhost" ]] && [[ -z "$disk" ]] && disk="$SPDK_VHOST_SCSI_TEST_DIR/usvhost"
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
function usage()
|
||||
@ -35,7 +36,7 @@ while getopts "$optspec" optchar; do
|
||||
esac
|
||||
done
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
if $do_kill && [[ $EUID -ne 0 ]]; then
|
||||
echo "Go away user come back as root"
|
@ -1,6 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
function usage()
|
||||
@ -32,7 +33,7 @@ while getopts 'xwh-:' optchar; do
|
||||
esac
|
||||
done
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
shift $((OPTIND-1))
|
||||
vm_num="$1"
|
@ -1,12 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
BASE_DIR=$(readlink -f $(dirname $0))
|
||||
[[ -z "$COMMON_DIR" ]] && COMMON_DIR="$(cd $BASE_DIR/../common && pwd)"
|
||||
[[ -z "$TEST_DIR" ]] && TEST_DIR="$(cd $BASE_DIR/../../../../ && pwd)"
|
||||
|
||||
dry_run=false
|
||||
no_shutdown=false
|
||||
fio_bin="fio"
|
||||
fio_jobs="$BASE_DIR/fio_jobs/"
|
||||
fio_jobs="$COMMON_DIR/fio_jobs/"
|
||||
test_type=spdk_vhost_scsi
|
||||
reuse_vms=false
|
||||
force_build=false
|
||||
@ -85,7 +86,7 @@ if [[ -d "$fio_jobs" ]]; then
|
||||
fio_jobs="$fio_jobs/*.job"
|
||||
fi
|
||||
|
||||
. $BASE_DIR/common.sh
|
||||
. $COMMON_DIR/common.sh
|
||||
|
||||
trap 'error_exit "${FUNCNAME}" "${LINENO}"' ERR
|
||||
|
||||
@ -121,7 +122,7 @@ if [[ $test_type =~ "spdk_vhost" ]]; then
|
||||
echo ""
|
||||
echo "INFO: running SPDK"
|
||||
echo ""
|
||||
$BASE_DIR/run_vhost.sh $x --work-dir=$TEST_DIR
|
||||
$COMMON_DIR/run_vhost.sh $x --work-dir=$TEST_DIR --conf-dir=$BASE_DIR
|
||||
echo
|
||||
fi
|
||||
|
||||
@ -135,7 +136,7 @@ rpc_py+="-s 127.0.0.1 "
|
||||
|
||||
for vm_conf in ${vms[@]}; do
|
||||
IFS=',' read -ra conf <<< "$vm_conf"
|
||||
setup_cmd="$BASE_DIR/vm_setup.sh $x --work-dir=$TEST_DIR --test-type=$test_type"
|
||||
setup_cmd="$COMMON_DIR/vm_setup.sh $x --work-dir=$TEST_DIR --test-type=$test_type"
|
||||
if [[ x"${conf[0]}" == x"" ]] || ! assert_number ${conf[0]}; then
|
||||
echo "ERROR: invalid VM configuration syntax $vm_conf"
|
||||
exit 1;
|
||||
@ -246,7 +247,7 @@ for vm_conf in ${vms[@]}; do
|
||||
done
|
||||
|
||||
# Run everything
|
||||
$BASE_DIR/vm_run.sh $x --work-dir=$TEST_DIR $used_vms
|
||||
$COMMON_DIR/vm_run.sh $x --work-dir=$TEST_DIR $used_vms
|
||||
vm_wait_for_boot 600 $used_vms
|
||||
|
||||
if [[ $test_type == "spdk_vhost_scsi" ]]; then
|
||||
@ -274,7 +275,7 @@ echo ""
|
||||
echo "INFO: Testing..."
|
||||
|
||||
echo "INFO: Running fio jobs ..."
|
||||
run_fio="python $BASE_DIR/run_fio.py "
|
||||
run_fio="python $COMMON_DIR/run_fio.py "
|
||||
run_fio+="$fio_bin "
|
||||
run_fio+="--job-file="
|
||||
for job in $fio_jobs; do
|
||||
|
@ -22,7 +22,7 @@ case $param in
|
||||
./fiotest/autotest.sh --fio-bin=/home/sys_sgsw/fio_ubuntu \
|
||||
--vm=0,/home/sys_sgsw/vhost_vm_image.qcow2,Nvme0n1p0 \
|
||||
--test-type=spdk_vhost_scsi \
|
||||
--fio-jobs=$WORKDIR/fiotest/fio_jobs/default_performance.job \
|
||||
--fio-jobs=$WORKDIR/common/fio_jobs/default_performance.job \
|
||||
--qemu-src=/home/sys_sgsw/vhost/qemu
|
||||
;;
|
||||
-pb|--performance-blk)
|
||||
@ -30,7 +30,7 @@ case $param in
|
||||
./fiotest/autotest.sh --fio-bin=/home/sys_sgsw/fio_ubuntu \
|
||||
--vm=0,/home/sys_sgsw/vhost_vm_image.qcow2,Nvme0n1p0 \
|
||||
--test-type=spdk_vhost_blk \
|
||||
--fio-jobs=$WORKDIR/fiotest/fio_jobs/default_performance.job \
|
||||
--fio-jobs=$WORKDIR/common/fio_jobs/default_performance.job \
|
||||
--qemu-src=/home/sys_sgsw/vhost/qemu
|
||||
;;
|
||||
-i|--integrity)
|
||||
@ -38,7 +38,7 @@ case $param in
|
||||
./fiotest/autotest.sh --fio-bin=/home/sys_sgsw/fio_ubuntu \
|
||||
--vm=0,/home/sys_sgsw/vhost_vm_image.qcow2,Nvme0n1p0:Nvme0n1p1:Nvme0n1p2:Nvme0n1p3 \
|
||||
--test-type=spdk_vhost_scsi \
|
||||
--fio-jobs=$WORKDIR/fiotest/fio_jobs/default_integrity.job \
|
||||
--fio-jobs=$WORKDIR/common/fio_jobs/default_integrity.job \
|
||||
--qemu-src=/home/sys_sgsw/vhost/qemu -x
|
||||
;;
|
||||
-ib|--integrity-blk)
|
||||
@ -46,7 +46,7 @@ case $param in
|
||||
./fiotest/autotest.sh --fio-bin=/home/sys_sgsw/fio_ubuntu \
|
||||
--vm=0,/home/sys_sgsw/vhost_vm_image.qcow2,Nvme0n1p0:Nvme0n1p1:Nvme0n1p2:Nvme0n1p3 \
|
||||
--test-type=spdk_vhost_blk \
|
||||
--fio-jobs=$WORKDIR/fiotest/fio_jobs/default_integrity.job \
|
||||
--fio-jobs=$WORKDIR/common/fio_jobs/default_integrity.job \
|
||||
--qemu-src=/home/sys_sgsw/vhost/qemu -x
|
||||
;;
|
||||
-fs|--fs-integrity-scsi)
|
||||
|
Loading…
Reference in New Issue
Block a user