1 · ESXi HOST — physical server, VT-x / AMD-V
2 · LINUX VM — Debian, /dev/kvm exposed to the guest
3 · GITLAB RUNNER — Docker executor, privileged kind-manager image
4 · KIND CLUSTER — Kubernetes nodes as Docker containers
Control-plane node

kube-apiserver · etcd
scheduler · controller-manager
Worker node

kubelet · kube-proxy
containerd
Temporal server

workflow engine
ClusterIP service
Temporal worker

drives the build passes
one per target platform
KubeVirt

virt-operator, virt-controller
virt-launcher pod
Windows VM — running on KVM

full Windows guest on a Linux-only cluster
·
native C / Rust compilation, no cross-compilation
VirtIO drivers · vCPU / vRAM / vDisk
Boot disk (PVC)

win.qcow2 · Packer + QEMU
unattended.xml install
GitLab CI

triggers the job
·
whole environment rebuilt
from scratch on every run
/dev/kvm passthrough

VT-x / AMD-V
↓ ESXi host
↓ Debian VM
↓ privileged container
↓ kind node
↓ virt-launcher
↓ Windows VM
·
kernel modules checked to
rule out emulation fallback
Production target

RKE2 on native
Windows and Linux servers
starts the VM
build tasks
boots from
same workloads
Text is not SVG - cannot display