1#!/bin/sh
2# Copyright (C) 2008 Red Hat, Inc. All rights reserved.
3#
4# This copyrighted material is made available to anyone wishing to use,
5# modify, copy, or redistribute it subject to the terms and conditions
6# of the GNU General Public License v.2.
7#
8# You should have received a copy of the GNU General Public License
9# along with this program; if not, write to the Free Software Foundation,
10# Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
11
12. ./test-utils.sh
13
14aux prepare_pvs 4
15
16# vgcfgbackup handles similar VG names (bz458941)
17vg1=${PREFIX}vg00
18vg2=${PREFIX}vg01
19vgcreate $vg1 $dev1
20vgcreate $vg2 $dev2
21vgcfgbackup -f /tmp/bak-%s >out
22grep "Volume group \"$vg1\" successfully backed up." out
23grep "Volume group \"$vg2\" successfully backed up." out
24vgremove -ff $vg1
25vgremove -ff $vg2
26
27# vgcfgbackup correctly stores metadata with missing PVs
28# and vgcfgrestore able to restore them when device reappears
29pv1_uuid=$(pvs --noheadings -o pv_uuid $dev1)
30pv2_uuid=$(pvs --noheadings -o pv_uuid $dev2)
31vgcreate $vg $devs
32lvcreate -l1 -n $lv1 $vg $dev1
33lvcreate -l1 -n $lv2 $vg $dev2
34lvcreate -l1 -n $lv3 $vg $dev3
35vgchange -a n $vg
36pvcreate -ff -y $dev1
37pvcreate -ff -y $dev2
38vgcfgbackup -f "$(pwd)/backup.$$" $vg
39sed 's/flags = \[\"MISSING\"\]/flags = \[\]/' "$(pwd)/backup.$$" > "$(pwd)/backup.$$1"
40pvcreate -ff -y -u $pv1_uuid $dev1
41pvcreate -ff -y -u $pv2_uuid $dev2
42vgcfgrestore -f "$(pwd)/backup.$$1" $vg
43