Skip to content

Commit 2d5c774

Browse files
committed
Enable experimental QEMU tests on Windows
Signed-off-by: Arthur Sengileyev <[email protected]>
1 parent 5b0ba32 commit 2d5c774

File tree

4 files changed

+624
-5
lines changed

4 files changed

+624
-5
lines changed

.github/workflows/test.yml

+10
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,16 @@ jobs:
174174
$env:LIMACTL_CREATE_ARGS = '--vm-type=wsl2 --mount-type=wsl2 --containerd=system'
175175
$env:_LIMA_WINDOWS_EXTRA_PATH = 'C:\Program Files\Git\usr\bin'
176176
bash.exe -c "./hack/test-templates.sh templates/experimental/wsl2.yaml"
177+
- name: Integration tests (QEMU, Windows host)
178+
run: |
179+
$env:PATH = "$pwd\_output\bin;" + 'C:\msys64\usr\bin;C:\msys64\clang64\bin;' + $env:PATH
180+
pacman -Sy --noconfirm openbsd-netcat diffutils mingw-w64-clang-x86_64-qemu
181+
$env:MSYS2_ENV_CONV_EXCL = 'HOME_HOST;HOME_GUEST;_LIMA_WINDOWS_EXTRA_PATH'
182+
$env:HOME_HOST = $(cygpath.exe "$env:USERPROFILE")
183+
$env:HOME_GUEST = $(cygpath.exe "$env:USERPROFILE")
184+
$env:LIMACTL_CREATE_ARGS = '--vm-type=qemu'
185+
$env:_LIMA_WINDOWS_EXTRA_PATH = 'C:\Program Files\Git\usr\bin'
186+
bash.exe -c "./hack/test-templates.sh templates/experimental/default-windows.yaml"
177187
178188
qemu:
179189
name: "Integration tests (QEMU, macOS host)"

hack/test-templates.sh

+3
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,9 @@ case "$NAME" in
9494
# TODO https://github.com/lima-vm/lima/issues/3268
9595
CHECKS["proxy-settings"]=
9696
;;
97+
"default-windows")
98+
CHECKS["mount-home"]=
99+
;;
97100
esac
98101

99102
if limactl ls -q | grep -q "$NAME"; then

pkg/limayaml/defaults_test.go

+20-5
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,12 @@ func TestFillDefault(t *testing.T) {
7575

7676
// Builtin default values
7777
builtin := LimaYAML{
78-
VMType: &defaultVMType,
78+
VMType: &defaultVMType,
79+
VMOpts: VMOpts{
80+
QEMU: QEMUOpts{
81+
VirtioGA: ptr.Of(runtime.GOOS == "windows"),
82+
},
83+
},
7984
OS: ptr.Of(LINUX),
8085
Arch: ptr.Of(arch),
8186
CPUType: defaultCPUType(),
@@ -337,8 +342,13 @@ func TestFillDefault(t *testing.T) {
337342
varLog, _ := filepath.Abs("/var/log")
338343
d = LimaYAML{
339344
VMType: ptr.Of("vz"),
340-
OS: ptr.Of("unknown"),
341-
Arch: ptr.Of("unknown"),
345+
VMOpts: VMOpts{
346+
QEMU: QEMUOpts{
347+
VirtioGA: ptr.Of(runtime.GOOS == "windows"),
348+
},
349+
},
350+
OS: ptr.Of("unknown"),
351+
Arch: ptr.Of("unknown"),
342352
CPUType: CPUType{
343353
AARCH64: "arm64",
344354
ARMV7L: "armhf",
@@ -556,8 +566,13 @@ func TestFillDefault(t *testing.T) {
556566

557567
o = LimaYAML{
558568
VMType: ptr.Of("qemu"),
559-
OS: ptr.Of(LINUX),
560-
Arch: ptr.Of(arch),
569+
VMOpts: VMOpts{
570+
QEMU: QEMUOpts{
571+
VirtioGA: ptr.Of(runtime.GOOS == "windows"),
572+
},
573+
},
574+
OS: ptr.Of(LINUX),
575+
Arch: ptr.Of(arch),
561576
CPUType: CPUType{
562577
AARCH64: "uber-arm",
563578
ARMV7L: "armv8",

0 commit comments

Comments
 (0)