diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2011-10-26 19:27:01 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2011-10-26 19:29:57 +0100 |
commit | b893294dcc948d4b41318a400fc4235a190d306b (patch) | |
tree | e6b2e9b5a5fe93bfe1bcd9fda2606feb08de6575 /regressions | |
parent | 163f7df8452f5d7eb47039a98cd97d498528e4d5 (diff) | |
download | libguestfs-b893294dcc948d4b41318a400fc4235a190d306b.tar.gz libguestfs-b893294dcc948d4b41318a400fc4235a190d306b.tar.xz libguestfs-b893294dcc948d4b41318a400fc4235a190d306b.zip |
add-domain: Add readonlydisk optional argument (RHBZ#747290).
This optional argument controls how <readonly/> disks in
the libvirt XML are handled. It can be set to one of:
"write" (default) - add them R/W
"read" - add them R/O
"error" - throw an error if asked to add them R/W
"ignore" - ignore these disks
I have added limited regression tests for this feature. However
libvirt's test:/// XML does not allow you to specify that a domain
starts off shut down, so we cannot fully test this. Instead I tested
it by hand.
Diffstat (limited to 'regressions')
-rwxr-xr-x | regressions/test-add-domain.sh | 23 | ||||
-rwxr-xr-x | regressions/test-guestfish-d.sh | 13 |
2 files changed, 30 insertions, 6 deletions
diff --git a/regressions/test-add-domain.sh b/regressions/test-add-domain.sh index ea6d3883..7616c385 100755 --- a/regressions/test-add-domain.sh +++ b/regressions/test-add-domain.sh @@ -20,11 +20,11 @@ set -e -rm -f test1.img test2.img test3.img test.xml test.out +rm -f test1.img test2.img test3.img test4.img test.xml test.out cwd="$(pwd)" -truncate -s 1M test1.img test2.img test3.img +truncate -s 1M test1.img test2.img test3.img test4.img # Libvirt test XML, see libvirt.git/examples/xml/test/testnode.xml cat > test.xml <<EOF @@ -51,6 +51,12 @@ cat > test.xml <<EOF <source file="$cwd/test3.img"/> <target dev="hdc"/> </disk> + <disk type="file"> + <driver name="qemu" type="raw"/> + <source file="$cwd/test4.img"/> + <target dev="hdd"/> + <readonly/> + </disk> </devices> </domain> </node> @@ -65,6 +71,16 @@ grep -sq "test1.img.*snapshot=on" test.out grep -sq "test2.img.*snapshot=on.*format=raw" test.out grep -sq "test3.img.*snapshot=on.*format=qcow2" test.out +# Test readonlydisk = "ignore". +../fish/guestfish >test.out <<EOF + -domain guest libvirturi:test://$cwd/test.xml readonly:true readonlydisk:ignore + debug-drives +EOF +grep -sq "test1.img" test.out +grep -sq "test2.img" test.out +grep -sq "test3.img" test.out +! grep -sq "test4.img" test.out + # Test atomicity. rm test3.img @@ -75,5 +91,6 @@ EOF ! grep -sq "test1.img" test.out ! grep -sq "test2.img" test.out ! grep -sq "test3.img" test.out +! grep -sq "test4.img" test.out -rm -f test1.img test2.img test3.img test.xml test.out +rm -f test1.img test2.img test3.img test4.img test.xml test.out diff --git a/regressions/test-guestfish-d.sh b/regressions/test-guestfish-d.sh index b95f62da..ab039446 100755 --- a/regressions/test-guestfish-d.sh +++ b/regressions/test-guestfish-d.sh @@ -20,11 +20,11 @@ set -e -rm -f test1.img test2.img test3.img test.xml test.out +rm -f test1.img test2.img test3.img test4.img test.xml test.out cwd="$(pwd)" -truncate -s 1M test1.img test2.img test3.img +truncate -s 1M test1.img test2.img test3.img test4.img # Libvirt test XML, see libvirt.git/examples/xml/test/testnode.xml cat > test.xml <<EOF @@ -51,6 +51,12 @@ cat > test.xml <<EOF <source file="$cwd/test3.img"/> <target dev="hdc"/> </disk> + <disk type="file"> + <driver name="qemu" type="raw"/> + <source file="$cwd/test4.img"/> + <target dev="hdd"/> + <readonly/> + </disk> </devices> </domain> </node> @@ -62,5 +68,6 @@ grep -sq "test1.img.*snapshot=on" test.out ! grep -sq "test1.img.*format" test.out grep -sq "test2.img.*snapshot=on.*format=raw" test.out grep -sq "test3.img.*snapshot=on.*format=qcow2" test.out +grep -sq "test4.img.*snapshot=on.*format=raw" test.out -rm -f test1.img test2.img test3.img test.xml test.out +rm -f test1.img test2.img test3.img test4.img test.xml test.out |