xref: /qemu/tests/qemu-iotests/146 (revision 42a5009d)
111a82d14SPhilippe Mathieu-Daudé#!/usr/bin/env bash
29dd003a9SVladimir Sementsov-Ogievskiy# group: quick
3798609bbSJeff Cody#
4798609bbSJeff Cody# Test VHD image format creator detection and override
5798609bbSJeff Cody#
6798609bbSJeff Cody# Copyright (C) 2016 Red Hat, Inc.
7798609bbSJeff Cody#
8798609bbSJeff Cody# This program is free software; you can redistribute it and/or modify
9798609bbSJeff Cody# it under the terms of the GNU General Public License as published by
10798609bbSJeff Cody# the Free Software Foundation; either version 2 of the License, or
11798609bbSJeff Cody# (at your option) any later version.
12798609bbSJeff Cody#
13798609bbSJeff Cody# This program is distributed in the hope that it will be useful,
14798609bbSJeff Cody# but WITHOUT ANY WARRANTY; without even the implied warranty of
15798609bbSJeff Cody# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16798609bbSJeff Cody# GNU General Public License for more details.
17798609bbSJeff Cody#
18798609bbSJeff Cody# You should have received a copy of the GNU General Public License
19798609bbSJeff Cody# along with this program.  If not, see <http://www.gnu.org/licenses/>.
20798609bbSJeff Cody#
21798609bbSJeff Cody
22798609bbSJeff Cody# creator
23*42a5009dSJohn Snowowner=codyprime@gmail.com
24798609bbSJeff Cody
25798609bbSJeff Codyseq=`basename $0`
26798609bbSJeff Codyecho "QA output created by $seq"
27798609bbSJeff Cody
28798609bbSJeff Codystatus=1    # failure is the default!
29798609bbSJeff Cody
30798609bbSJeff Cody_cleanup()
31798609bbSJeff Cody{
32798609bbSJeff Cody    _cleanup_qemu
33798609bbSJeff Cody    _cleanup_test_img
34798609bbSJeff Cody}
35798609bbSJeff Codytrap "_cleanup; exit \$status" 0 1 2 3 15
36798609bbSJeff Cody
37798609bbSJeff Cody# get standard environment, filters and checks
38798609bbSJeff Cody. ./common.rc
39798609bbSJeff Cody. ./common.filter
40798609bbSJeff Cody. ./common.qemu
41798609bbSJeff Cody
42798609bbSJeff Cody_supported_fmt vpc
43798609bbSJeff Cody_supported_proto file
44798609bbSJeff Cody_supported_os Linux
45798609bbSJeff Cody
46798609bbSJeff Cody
47798609bbSJeff Codyqemu_comm_method="monitor"
48798609bbSJeff Codysilent=
49798609bbSJeff Cody
50798609bbSJeff Codyecho
51798609bbSJeff Codyecho === Testing VPC Autodetect ===
52798609bbSJeff Codyecho
53798609bbSJeff Cody_use_sample_img virtualpc-dynamic.vhd.bz2
54798609bbSJeff Cody
552c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
562c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,file.filename=$TEST_IMG" \
572c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
58798609bbSJeff Cody
59798609bbSJeff Codyecho
60798609bbSJeff Codyecho === Testing VPC with current_size force ===
61798609bbSJeff Codyecho
62798609bbSJeff Cody
632c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
642c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=current_size,file.filename=$TEST_IMG" \
652c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
66798609bbSJeff Cody
67798609bbSJeff Codyecho
68798609bbSJeff Codyecho === Testing VPC with chs force ===
69798609bbSJeff Codyecho
70798609bbSJeff Cody
712c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
722c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=chs,file.filename=$TEST_IMG" \
732c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
74798609bbSJeff Cody
75798609bbSJeff Cody_cleanup_test_img
76798609bbSJeff Cody
77798609bbSJeff Codyecho
78798609bbSJeff Codyecho === Testing Hyper-V Autodetect ===
79798609bbSJeff Codyecho
80798609bbSJeff Cody_use_sample_img hyperv2012r2-dynamic.vhd.bz2
81798609bbSJeff Cody
822c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
832c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,file.filename=$TEST_IMG" \
842c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
85798609bbSJeff Cody
86798609bbSJeff Codyecho
87798609bbSJeff Codyecho === Testing Hyper-V with current_size force ===
88798609bbSJeff Codyecho
89798609bbSJeff Cody
902c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
912c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=current_size,file.filename=$TEST_IMG" \
922c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
93798609bbSJeff Cody
94798609bbSJeff Codyecho
95798609bbSJeff Codyecho === Testing Hyper-V with chs force ===
96798609bbSJeff Codyecho
97798609bbSJeff Cody
982c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
992c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=chs,file.filename=$TEST_IMG" \
1002c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
101798609bbSJeff Cody
102798609bbSJeff Cody_cleanup_test_img
103798609bbSJeff Cody
104798609bbSJeff Codyecho
105798609bbSJeff Codyecho === Testing d2v Autodetect ===
106798609bbSJeff Codyecho
107798609bbSJeff Cody_use_sample_img d2v-zerofilled.vhd.bz2
108798609bbSJeff Cody
1092c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1102c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,file.filename=$TEST_IMG" \
1112c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
112798609bbSJeff Cody
113798609bbSJeff Codyecho
114798609bbSJeff Codyecho === Testing d2v with current_size force ===
115798609bbSJeff Codyecho
116798609bbSJeff Cody
1172c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1182c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=current_size,file.filename=$TEST_IMG" \
1192c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
120798609bbSJeff Cody
121798609bbSJeff Codyecho
122798609bbSJeff Codyecho === Testing d2v with chs force ===
123798609bbSJeff Codyecho
124798609bbSJeff Cody
1252c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1262c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=chs,file.filename=$TEST_IMG" \
1272c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
128798609bbSJeff Cody
1291001dd9fSJeff Cody_cleanup_test_img
1301001dd9fSJeff Cody
1311001dd9fSJeff Codyecho
1321001dd9fSJeff Codyecho === Testing Image create, default ===
1331001dd9fSJeff Codyecho
1341001dd9fSJeff Cody
1351001dd9fSJeff CodyTEST_IMG="${TEST_DIR}/vpc-create-test.vpc"
1361001dd9fSJeff Cody
1371001dd9fSJeff Cody_make_test_img 4G
1381001dd9fSJeff Cody
1391001dd9fSJeff Codyecho
1401001dd9fSJeff Codyecho === Read created image, default opts ====
1411001dd9fSJeff Codyecho
1421001dd9fSJeff Cody
1432c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1442c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,file.filename=$TEST_IMG" \
1452c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
1461001dd9fSJeff Cody
1471001dd9fSJeff Codyecho
1481001dd9fSJeff Codyecho === Read created image, force_size_calc=chs ====
1491001dd9fSJeff Codyecho
1501001dd9fSJeff Cody
1512c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1522c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=chs,file.filename=$TEST_IMG" \
1532c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
1541001dd9fSJeff Cody
1551001dd9fSJeff Codyecho
1561001dd9fSJeff Codyecho === Read created image, force_size_calc=current_size ====
1571001dd9fSJeff Codyecho
1581001dd9fSJeff Cody
1592c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1602c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=current_size,file.filename=$TEST_IMG" \
1612c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
1621001dd9fSJeff Cody
1631001dd9fSJeff Codyecho
1641001dd9fSJeff Codyecho === Testing Image create, force_size ===
1651001dd9fSJeff Codyecho
1661001dd9fSJeff Cody
1671001dd9fSJeff Cody_make_test_img -o force_size 4G
1681001dd9fSJeff Cody
1691001dd9fSJeff Codyecho
1701001dd9fSJeff Codyecho === Read created image, default opts ====
1711001dd9fSJeff Codyecho
1721001dd9fSJeff Cody
1732c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1742c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,file.filename=$TEST_IMG" \
1752c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
1761001dd9fSJeff Cody
1771001dd9fSJeff Codyecho
1781001dd9fSJeff Codyecho === Read created image, force_size_calc=chs ====
1791001dd9fSJeff Codyecho
1801001dd9fSJeff Cody
1812c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1822c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=chs,file.filename=$TEST_IMG" \
1832c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
1841001dd9fSJeff Cody
1851001dd9fSJeff Codyecho
1861001dd9fSJeff Codyecho === Read created image, force_size_calc=current_size ====
1871001dd9fSJeff Codyecho
1881001dd9fSJeff Cody
1892c060c0fSVladimir Sementsov-Ogievskiy$QEMU_IMG map --output=json --image-opts \
1902c060c0fSVladimir Sementsov-Ogievskiy    "driver=vpc,force_size_calc=current_size,file.filename=$TEST_IMG" \
1912c060c0fSVladimir Sementsov-Ogievskiy    | _filter_qemu_img_map
192798609bbSJeff Cody
193798609bbSJeff Codyecho "*** done"
194798609bbSJeff Codyrm -f $seq.full
195798609bbSJeff Codystatus=0
196