In order to test the copying of virtio-win drivers into the guest during v2v, create a set of fake virtio-win drivers and make use of them in the corresponding v2v tests.
Signed-off-by: Roman Kagan <[email protected]> --- tests/fake-virtio-win/drivers/i386/Win7/netkvm.cat | 1 + tests/fake-virtio-win/drivers/i386/Win7/netkvm.inf | 1 + tests/fake-virtio-win/drivers/i386/Win7/netkvm.sys | 1 + tests/fake-virtio-win/drivers/i386/Win7/qxl.cat | 1 + tests/fake-virtio-win/drivers/i386/Win7/qxl.inf | 1 + tests/fake-virtio-win/drivers/i386/Win7/qxl.sys | 1 + .../fake-virtio-win/drivers/i386/Win7/vioscsi.cat | 1 + .../fake-virtio-win/drivers/i386/Win7/vioscsi.inf | 1 + .../fake-virtio-win/drivers/i386/Win7/vioscsi.sys | 1 + .../fake-virtio-win/drivers/i386/Win7/viostor.cat | 1 + .../fake-virtio-win/drivers/i386/Win7/viostor.inf | 1 + .../fake-virtio-win/drivers/i386/Win7/viostor.sys | 1 + v2v/test-v2v-cdrom.sh | 1 + v2v/test-v2v-i-ova-two-disks.sh | 1 + v2v/test-v2v-i-ova.sh | 1 + v2v/test-v2v-windows-conversion.sh | 26 +++++++++++++--------- 16 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/netkvm.cat create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/netkvm.inf create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/netkvm.sys create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/qxl.cat create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/qxl.inf create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/qxl.sys create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/vioscsi.cat create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/vioscsi.inf create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/vioscsi.sys create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/viostor.cat create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/viostor.inf create mode 100644 tests/fake-virtio-win/drivers/i386/Win7/viostor.sys diff --git a/tests/fake-virtio-win/drivers/i386/Win7/netkvm.cat b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.cat new file mode 100644 index 0000000..be81e94 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.cat @@ -0,0 +1 @@ +This is a fake netkvm.cat, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/netkvm.inf b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.inf new file mode 100644 index 0000000..ab4a68f --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.inf @@ -0,0 +1 @@ +This is a fake netkvm.inf, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/netkvm.sys b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.sys new file mode 100644 index 0000000..3a2afae --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/netkvm.sys @@ -0,0 +1 @@ +This is a fake netkvm.sys, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/qxl.cat b/tests/fake-virtio-win/drivers/i386/Win7/qxl.cat new file mode 100644 index 0000000..0af6a9a --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/qxl.cat @@ -0,0 +1 @@ +This is a fake qxl.cat, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/qxl.inf b/tests/fake-virtio-win/drivers/i386/Win7/qxl.inf new file mode 100644 index 0000000..3fb759d --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/qxl.inf @@ -0,0 +1 @@ +This is a fake qxl.inf, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/qxl.sys b/tests/fake-virtio-win/drivers/i386/Win7/qxl.sys new file mode 100644 index 0000000..118ede0 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/qxl.sys @@ -0,0 +1 @@ +This is a fake qxl.sys, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.cat b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.cat new file mode 100644 index 0000000..056535f --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.cat @@ -0,0 +1 @@ +This is a fake vioscsi.cat, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.inf b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.inf new file mode 100644 index 0000000..97b3884 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.inf @@ -0,0 +1 @@ +This is a fake vioscsi.inf, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.sys b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.sys new file mode 100644 index 0000000..102a797 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/vioscsi.sys @@ -0,0 +1 @@ +This is a fake vioscsi.sys, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/viostor.cat b/tests/fake-virtio-win/drivers/i386/Win7/viostor.cat new file mode 100644 index 0000000..6c32f85 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/viostor.cat @@ -0,0 +1 @@ +This is a fake viostor.cat, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/viostor.inf b/tests/fake-virtio-win/drivers/i386/Win7/viostor.inf new file mode 100644 index 0000000..18f416d --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/viostor.inf @@ -0,0 +1 @@ +This is a fake viostor.inf, used for testing only diff --git a/tests/fake-virtio-win/drivers/i386/Win7/viostor.sys b/tests/fake-virtio-win/drivers/i386/Win7/viostor.sys new file mode 100644 index 0000000..3f9c147 --- /dev/null +++ b/tests/fake-virtio-win/drivers/i386/Win7/viostor.sys @@ -0,0 +1 @@ +This is a fake viostor.sys, used for testing only diff --git a/v2v/test-v2v-cdrom.sh b/v2v/test-v2v-cdrom.sh index 25bf275..a963c73 100755 --- a/v2v/test-v2v-cdrom.sh +++ b/v2v/test-v2v-cdrom.sh @@ -49,6 +49,7 @@ if ! test -f $f || ! test -s $f; then fi export VIRT_TOOLS_DATA_DIR="$abs_builddir/../tests/fake-virt-tools" +export VIRTIO_WIN="$abs_builddir/../tests/fake-virtio-win" d=test-v2v-cdrom.d rm -rf $d diff --git a/v2v/test-v2v-i-ova-two-disks.sh b/v2v/test-v2v-i-ova-two-disks.sh index ede6766..e7b4137 100755 --- a/v2v/test-v2v-i-ova-two-disks.sh +++ b/v2v/test-v2v-i-ova-two-disks.sh @@ -34,6 +34,7 @@ fi abs_top_builddir="$(cd ..; pwd)" export VIRT_TOOLS_DATA_DIR="$abs_top_builddir/tests/fake-virt-tools" +export VIRTIO_WIN="$abs_top_builddir/tests/fake-virtio-win" d=test-v2v-i-ova-two-disks.d rm -rf $d diff --git a/v2v/test-v2v-i-ova.sh b/v2v/test-v2v-i-ova.sh index 37fc89e..aaf5031 100755 --- a/v2v/test-v2v-i-ova.sh +++ b/v2v/test-v2v-i-ova.sh @@ -40,6 +40,7 @@ fi abs_top_builddir="$(cd ..; pwd)" export VIRT_TOOLS_DATA_DIR="$abs_top_builddir/tests/fake-virt-tools" +export VIRTIO_WIN="$abs_top_builddir/tests/fake-virtio-win" d=test-v2v-i-ova.d rm -rf $d diff --git a/v2v/test-v2v-windows-conversion.sh b/v2v/test-v2v-windows-conversion.sh index 916699d..3f4ae39 100755 --- a/v2v/test-v2v-windows-conversion.sh +++ b/v2v/test-v2v-windows-conversion.sh @@ -42,6 +42,7 @@ if ! test -f $f || ! test -s $f; then fi export VIRT_TOOLS_DATA_DIR="$abs_top_builddir/tests/fake-virt-tools" +export VIRTIO_WIN="$abs_top_builddir/tests/fake-virtio-win" # Return a random element from the array 'choices'. function random_choice @@ -67,23 +68,28 @@ test -f $d/windows.xml test -f $d/windows-sda # Test some aspects of the target disk image. +firstboot_dir="/Program Files/Red Hat/Firstboot" +virtio_dir="/Windows/Drivers/VirtIO" { -guestfish --ro -a $d/windows-sda -i <<EOF - trace 1 - is-dir "/Program Files/Red Hat/Firstboot" - is-file "/Program Files/Red Hat/Firstboot/firstboot.bat" - is-dir "/Program Files/Red Hat/Firstboot/scripts" - is-dir "/Windows/Drivers/VirtIO" - trace 0 -EOF -} | { + echo "trace 1" + echo "is-dir \"$firstboot_dir\"" + echo "is-file \"$firstboot_dir/firstboot.bat\"" + echo "is-dir \"$firstboot_dir/scripts\"" + echo "is-dir \"$virtio_dir\"" + for drv in netkvm qxl vioscsi viostor; do + for sfx in cat inf sys; do + echo "is-file \"$virtio_dir/$drv.$sfx\"" + done + done + echo "trace 0" +} | guestfish --ro -a $d/windows-sda -i | { ret=0 while read r; do [ "$r" = "true" ] || ret=1 done exit $ret } -(( PIPESTATUS[0] == 0 )) +(( PIPESTATUS[1] == 0 )) # We also update the Registry several times, for firstboot, and (ONLY # if the virtio-win drivers are installed locally) the critical device -- 2.4.3 _______________________________________________ Libguestfs mailing list [email protected] https://www.redhat.com/mailman/listinfo/libguestfs
