1ee17f9d5SKevin Wolf#!/bin/bash 2ee17f9d5SKevin Wolf# 3ee17f9d5SKevin Wolf# Test qemu-img operation on zero size images 4ee17f9d5SKevin Wolf# 5ee17f9d5SKevin Wolf# Copyright (C) 2012 Red Hat, Inc. 6ee17f9d5SKevin Wolf# 7ee17f9d5SKevin Wolf# This program is free software; you can redistribute it and/or modify 8ee17f9d5SKevin Wolf# it under the terms of the GNU General Public License as published by 9ee17f9d5SKevin Wolf# the Free Software Foundation; either version 2 of the License, or 10ee17f9d5SKevin Wolf# (at your option) any later version. 11ee17f9d5SKevin Wolf# 12ee17f9d5SKevin Wolf# This program is distributed in the hope that it will be useful, 13ee17f9d5SKevin Wolf# but WITHOUT ANY WARRANTY; without even the implied warranty of 14ee17f9d5SKevin Wolf# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15ee17f9d5SKevin Wolf# GNU General Public License for more details. 16ee17f9d5SKevin Wolf# 17ee17f9d5SKevin Wolf# You should have received a copy of the GNU General Public License 18ee17f9d5SKevin Wolf# along with this program. If not, see <http://www.gnu.org/licenses/>. 19ee17f9d5SKevin Wolf# 20ee17f9d5SKevin Wolf 21ee17f9d5SKevin Wolf# creator 22ee17f9d5SKevin Wolfowner=kwolf@redhat.com 23ee17f9d5SKevin Wolf 24ee17f9d5SKevin Wolfseq=`basename $0` 25ee17f9d5SKevin Wolfecho "QA output created by $seq" 26ee17f9d5SKevin Wolf 27ee17f9d5SKevin Wolfhere=`pwd` 28ee17f9d5SKevin Wolfstatus=1 # failure is the default! 29ee17f9d5SKevin Wolf 30ee17f9d5SKevin Wolf_cleanup() 31ee17f9d5SKevin Wolf{ 32ee17f9d5SKevin Wolf _cleanup_test_img 33ee17f9d5SKevin Wolf} 34ee17f9d5SKevin Wolftrap "_cleanup; exit \$status" 0 1 2 3 15 35ee17f9d5SKevin Wolf 36ee17f9d5SKevin Wolf# get standard environment, filters and checks 37ee17f9d5SKevin Wolf. ./common.rc 38ee17f9d5SKevin Wolf. ./common.filter 39ee17f9d5SKevin Wolf 40*ebab5636SDaniel P. Berrange_supported_fmt qcow2 qed 41ee17f9d5SKevin Wolf_supported_proto file 42ee17f9d5SKevin Wolf_supported_os Linux 43ee17f9d5SKevin Wolf 44ee17f9d5SKevin Wolfecho 45ee17f9d5SKevin Wolfecho "== Creating zero size image ==" 46ee17f9d5SKevin Wolf 47ee17f9d5SKevin Wolf_make_test_img 0 48ee17f9d5SKevin Wolf_check_test_img 49ee17f9d5SKevin Wolf 50fef9c191SJeff Codymv "$TEST_IMG" "$TEST_IMG.orig" 51ee17f9d5SKevin Wolf 52ee17f9d5SKevin Wolfecho 53ee17f9d5SKevin Wolfecho "== Converting the image ==" 54ee17f9d5SKevin Wolf 55fef9c191SJeff Cody$QEMU_IMG convert -O $IMGFMT "$TEST_IMG.orig" "$TEST_IMG" 56ee17f9d5SKevin Wolf_check_test_img 57ee17f9d5SKevin Wolf 58ee17f9d5SKevin Wolfecho 59ee17f9d5SKevin Wolfecho "== Converting the image, compressed ==" 60ee17f9d5SKevin Wolf 61ee17f9d5SKevin Wolfif [ "$IMGFMT" == "qcow2" ]; then 62fef9c191SJeff Cody $QEMU_IMG convert -c -O $IMGFMT "$TEST_IMG.orig" "$TEST_IMG" 63ee17f9d5SKevin Wolffi 64ee17f9d5SKevin Wolf_check_test_img 65ee17f9d5SKevin Wolf 66ee17f9d5SKevin Wolfecho 67ee17f9d5SKevin Wolfecho "== Rebasing the image ==" 68ee17f9d5SKevin Wolf 69fef9c191SJeff Cody$QEMU_IMG rebase -u -b "$TEST_IMG.orig" "$TEST_IMG" 70fef9c191SJeff Cody$QEMU_IMG rebase -b "$TEST_IMG.orig" "$TEST_IMG" 71ee17f9d5SKevin Wolf_check_test_img 72ee17f9d5SKevin Wolf 73ee17f9d5SKevin Wolf# success, all done 74ee17f9d5SKevin Wolfecho "*** done" 75ee17f9d5SKevin Wolfrm -f $seq.full 76ee17f9d5SKevin Wolfstatus=0 77ee17f9d5SKevin Wolf 78