The device shows up as /dev/sda in the installer. This is because the
i386 installer image (in wheezy and jessie, at least) is not PAE, and
therefore does not load PVHVM drivers and therefore does not switch
from the emulated device (which shows up as /dev/sda) to blockfront
(/dev/xvda).
There are ways it might be possible to provide an i386 install image
with PVHVM drivers (for example, the Xen-enabled i386 kernel on the
multi-arch ISO). However it is useful to have a test job which tests
both emulated devices and PVHVM ones, within a single job, and even on
my ancient under-desk test box (bedbug) the whole test takes only 28
minutes, which seems fine even as part of the fast smoke test.
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
stubdom=$5 # '' (or unset) or 'true'
local arch=$(branch_debianhvm_arch)
+ local testvars
case "$arch" in
amd64) iso_dir='install.amd' ;;
- i386) iso_dir='install.386' ;;
+ i386) iso_dir='install.386'
+ testvars+=' debianhvm_diskdevice=/dev/sda' ;;
*) iso_dir="install.$arch" ;;
esac
job_create_test test-$xenarch$kern-$dom0arch-$toolstack$qemuu_suffix$stubdom_suffix-$testname-$arch\
test-debianhvm $toolstack $xenarch $dom0arch $qemuu_runvar \
enable_xsm=$xsm \
- $stubdom_runvar \
+ $stubdom_runvar $testvars \
debianhvm_image=debian-7.2.0-$arch-CD-1.iso \
debianhvm_iso_kernel=/$iso_dir/vmlinuz \
debianhvm_iso_ramdisk=/$iso_dir/initrd.gz \
my $preseed_file = preseed_base($gho,$gsuite,'','',());
+ my $disk = guest_var($gho,'diskdevice','/dev/xvda');
+
$preseed_file .= (<<END.($bootfile =~ m/\befi\b/ ? <<END : '').<<END);
d-i netcfg/get_hostname string $gn
-d-i partman-auto/disk string /dev/xvda
+d-i partman-auto/disk string $disk
d-i partman-auto/method string regular
d-i partman-auto/expert_recipe string \\