1*dd7fdaadSFam Zheng#!/bin/bash 2*dd7fdaadSFam Zheng# 3*dd7fdaadSFam Zheng# Test NBD export with -incoming (non-shared storage migration use case from 4*dd7fdaadSFam Zheng# libvirt) 5*dd7fdaadSFam Zheng# 6*dd7fdaadSFam Zheng# Copyright (C) 2017 Red Hat, Inc. 7*dd7fdaadSFam Zheng# 8*dd7fdaadSFam Zheng# This program is free software; you can redistribute it and/or modify 9*dd7fdaadSFam Zheng# it under the terms of the GNU General Public License as published by 10*dd7fdaadSFam Zheng# the Free Software Foundation; either version 2 of the License, or 11*dd7fdaadSFam Zheng# (at your option) any later version. 12*dd7fdaadSFam Zheng# 13*dd7fdaadSFam Zheng# This program is distributed in the hope that it will be useful, 14*dd7fdaadSFam Zheng# but WITHOUT ANY WARRANTY; without even the implied warranty of 15*dd7fdaadSFam Zheng# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16*dd7fdaadSFam Zheng# GNU General Public License for more details. 17*dd7fdaadSFam Zheng# 18*dd7fdaadSFam Zheng# You should have received a copy of the GNU General Public License 19*dd7fdaadSFam Zheng# along with this program. If not, see <http://www.gnu.org/licenses/>. 20*dd7fdaadSFam Zheng# 21*dd7fdaadSFam Zheng 22*dd7fdaadSFam Zheng# creator 23*dd7fdaadSFam Zhengowner=famz@redhat.com 24*dd7fdaadSFam Zheng 25*dd7fdaadSFam Zhengseq=`basename $0` 26*dd7fdaadSFam Zhengecho "QA output created by $seq" 27*dd7fdaadSFam Zheng 28*dd7fdaadSFam Zhenghere=`pwd` 29*dd7fdaadSFam Zhengstatus=1 # failure is the default! 30*dd7fdaadSFam Zheng 31*dd7fdaadSFam Zheng_cleanup() 32*dd7fdaadSFam Zheng{ 33*dd7fdaadSFam Zheng _cleanup_test_img 34*dd7fdaadSFam Zheng} 35*dd7fdaadSFam Zhengtrap "_cleanup; exit \$status" 0 1 2 3 15 36*dd7fdaadSFam Zheng 37*dd7fdaadSFam Zheng# get standard environment, filters and checks 38*dd7fdaadSFam Zheng. ./common.rc 39*dd7fdaadSFam Zheng. ./common.filter 40*dd7fdaadSFam Zheng 41*dd7fdaadSFam Zheng_supported_fmt generic 42*dd7fdaadSFam Zheng_supported_proto file 43*dd7fdaadSFam Zheng_supported_os Linux 44*dd7fdaadSFam Zheng 45*dd7fdaadSFam Zhengif [ "$QEMU_DEFAULT_MACHINE" != "pc" ]; then 46*dd7fdaadSFam Zheng _notrun "Requires a PC machine" 47*dd7fdaadSFam Zhengfi 48*dd7fdaadSFam Zheng 49*dd7fdaadSFam Zhengsize=64M 50*dd7fdaadSFam Zheng_make_test_img $size 51*dd7fdaadSFam Zheng 52*dd7fdaadSFam Zheng{ 53*dd7fdaadSFam Zhengecho "nbd_server_start unix:$TEST_DIR/nbd" 54*dd7fdaadSFam Zhengecho "nbd_server_add -w drive0" 55*dd7fdaadSFam Zhengecho "q" 56*dd7fdaadSFam Zheng} | $QEMU -nodefaults -display none -monitor stdio \ 57*dd7fdaadSFam Zheng -drive format=$IMGFMT,file=$TEST_IMG,if=ide,id=drive0 \ 58*dd7fdaadSFam Zheng -incoming defer 2>&1 | _filter_testdir | _filter_qemu | _filter_hmp 59*dd7fdaadSFam Zheng 60*dd7fdaadSFam Zheng# success, all done 61*dd7fdaadSFam Zhengecho "*** done" 62*dd7fdaadSFam Zhengrm -f $seq.full 63*dd7fdaadSFam Zhengstatus=0 64