Spdk/test/nvmf/target/create_transport.sh
Jim Harris d98c37495a test: add explicit listener for discovery subsystem
Ensures compliance now that we've deprecated being
able to connect to any listener without adding it to
the discovery subsystem first.

This patch was tested with a temporary change that
removes the default discovery listener.  It is
possible that future test changes could again
depend on this deprecated behavior, but at least
now all existing tests will explicitly create the
discovery listener, making it more likely that
new tests will copy the correct behavior.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I936d3d124e22a56548ea43c73ca8197c22ec0f66
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11541
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2022-02-28 11:06:16 +00:00

54 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
testdir=$(readlink -f $(dirname $0))
rootdir=$(readlink -f $testdir/../../..)
source $rootdir/test/common/autotest_common.sh
source $rootdir/test/nvmf/common.sh
NULL_BDEV_SIZE=102400
NULL_BLOCK_SIZE=512
rpc_py="$rootdir/scripts/rpc.py"
if ! hash nvme; then
echo "nvme command not found; skipping create transport test"
exit 0
fi
nvmftestinit
nvmfappstart -m 0xF
# Use nvmf_create_transport call to create transport
$rpc_py nvmf_create_transport $NVMF_TRANSPORT_OPTS -u 8192
null_bdevs="$($rpc_py bdev_null_create Null0 $NULL_BDEV_SIZE $NULL_BLOCK_SIZE) "
null_bdevs+="$($rpc_py bdev_null_create Null1 $NULL_BDEV_SIZE $NULL_BLOCK_SIZE)"
$rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001
for null_bdev in $null_bdevs; do
$rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 $null_bdev
done
$rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
$rpc_py nvmf_subsystem_add_listener discovery -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
nvme discover -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
echo "Perform nvmf subsystem discovery via RPC"
$rpc_py nvmf_get_subsystems
$rpc_py nvmf_delete_subsystem nqn.2016-06.io.spdk:cnode1
for null_bdev in $null_bdevs; do
$rpc_py bdev_null_delete $null_bdev
done
check_bdevs=$($rpc_py bdev_get_bdevs | jq -r '.[].name')
if [ -n "$check_bdevs" ]; then
echo $check_bdevs
exit 1
fi
trap - SIGINT SIGTERM EXIT
nvmftestfini