xref: /spdk/test/iscsi_tgt/calsoft/calsoft.sh (revision 1aa807f44c58df6a163dffbb75e0cc1d42fc13f6)
1658faa3dSCunyin Chang#!/usr/bin/env bash
2eb53c232Spaul luse#  SPDX-License-Identifier: BSD-3-Clause
3eb53c232Spaul luse#  Copyright (C) 2016 Intel Corporation
4eb53c232Spaul luse#  All rights reserved.
5eb53c232Spaul luse#
6658faa3dSCunyin Changtestdir=$(readlink -f $(dirname $0))
710f9391aSBen Walkerrootdir=$(readlink -f $testdir/../../..)
8c9e5d2a6SSeth Howellsource $rootdir/test/common/autotest_common.sh
9b20d0296SJim Harrissource $rootdir/test/iscsi_tgt/common.sh
10658faa3dSCunyin Chang
1105129711SShuhei Matsumotodelete_tmp_conf_files() {
1205129711SShuhei Matsumoto	rm -f /usr/local/etc/its.conf
1305129711SShuhei Matsumoto}
1405129711SShuhei Matsumoto
15134dce26SCunyin ChangMALLOC_BDEV_SIZE=64
16658faa3dSCunyin ChangMALLOC_BLOCK_SIZE=512
17658faa3dSCunyin Chang
18b96f97cfSPawel Wodkowskirpc_py="$rootdir/scripts/rpc.py"
19b96f97cfSPawel Wodkowskicalsoft_py="$testdir/calsoft.py"
20658faa3dSCunyin Chang
21658faa3dSCunyin Chang# Copy the calsoft config file to /usr/local/etc
22658faa3dSCunyin Changmkdir -p /usr/local/etc
23658faa3dSCunyin Changcp $testdir/its.conf /usr/local/etc/
24658faa3dSCunyin Chang
25c99069fdSTomasz Zawadzki# Append target ip to calsoft config
26c99069fdSTomasz Zawadzkiecho "IP=$TARGET_IP" >> /usr/local/etc/its.conf
27c99069fdSTomasz Zawadzki
287c347821SJim Harristiming_enter start_iscsi_tgt
297c347821SJim Harris
30*1aa807f4SJim Harrisiscsitestinit
31*1aa807f4SJim Harris
32b4c5509cSMichal Berger"${ISCSI_APP[@]}" -m 0x1 --wait-for-rpc &
33658faa3dSCunyin Changpid=$!
34658faa3dSCunyin Changecho "Process pid: $pid"
35658faa3dSCunyin Chang
36*1aa807f4SJim Harristrap 'killprocess $pid; delete_tmp_conf_files; iscsitestfini; exit 1 ' SIGINT SIGTERM EXIT
37658faa3dSCunyin Chang
386bef902cSJim Harriswaitforlisten $pid
3955014ddfSJim Harris$rpc_py load_subsystem_config < $testdir/iscsi.json
40e85d4712SMaciej Wawryk$rpc_py framework_start_init
41658faa3dSCunyin Changecho "iscsi_tgt is listening. Running tests..."
42658faa3dSCunyin Chang
437c347821SJim Harristiming_exit start_iscsi_tgt
447c347821SJim Harris
45d9edd3afSPawel Kaminski$rpc_py iscsi_create_auth_group 1 -c 'user:root secret:tester'
46a05efe0aSPawel Kaminski$rpc_py iscsi_set_discovery_auth -g 1
470f4b3490SPawel Kaminski$rpc_py iscsi_create_portal_group $PORTAL_TAG $TARGET_IP:$ISCSI_PORT
4894dd4b9aSPawel Kaminski$rpc_py iscsi_create_initiator_group $INITIATOR_TAG $INITIATOR_NAME $NETMASK
497964f1dfSPawel Kaminski$rpc_py bdev_malloc_create -b MyBdev $MALLOC_BDEV_SIZE $MALLOC_BLOCK_SIZE
506f6645e2SDaniel Verkamp# "MyBdev:0" ==> use MyBdev blockdev for LUN0
51658faa3dSCunyin Chang# "1:2" ==> map PortalGroup1 to InitiatorGroup2
52658faa3dSCunyin Chang# "64" ==> iSCSI queue depth 64
53658faa3dSCunyin Chang# "0 0 0 1" ==> enable CHAP authentication using auth group 1
54758b2f94SPawel Kaminski$rpc_py iscsi_create_target_node Target3 Target3_alias 'MyBdev:0' $PORTAL_TAG:$INITIATOR_TAG 64 -g 1
55658faa3dSCunyin Changsleep 1
56658faa3dSCunyin Chang
57658faa3dSCunyin Changif [ "$1" ]; then
58658faa3dSCunyin Chang	$calsoft_py "$output_dir" "$1"
59658faa3dSCunyin Chang	failed=$?
60658faa3dSCunyin Changelse
61658faa3dSCunyin Chang	$calsoft_py "$output_dir"
62658faa3dSCunyin Chang	failed=$?
63658faa3dSCunyin Changfi
64658faa3dSCunyin Chang
65658faa3dSCunyin Changtrap - SIGINT SIGTERM EXIT
66658faa3dSCunyin Chang
67*1aa807f4SJim Harrisiscsicleanup
68658faa3dSCunyin Changkillprocess $pid
6905129711SShuhei Matsumotodelete_tmp_conf_files
70*1aa807f4SJim Harrisiscsitestfini
71658faa3dSCunyin Changexit $failed
72