Remove the docker-machine-driver-kvm2 wrapper and use the kvm driver as
internal driver.
To avoid dependency on libvirt shared library on Linux, we build now
with the libvirt_dlopen build tag. This is used only linux to avoid
linking with libvirt shared library. This is not documnted but can be
found in the source.
f7cdeba997/domain.go (L30)
With this we don't need libvirt devel libraries during build, and in
runtime we will fail if libvirt shared library is not installed.
With this change minikube can not be built for linux !amd64 since building
libvirt go binding requires CGO, and it does not work by changing GOARCH.
My editor is configured to remove trailing spaces automatically. Adding
as a separate commit to minimize the actual change and allow commit this
change separately from the kvm driver change.
When we fixed the way we detect failure #21544, we broke the heredoc.
The script fails now with[1]:
./hack/jenkins/build_iso.sh: line 74: unexpected EOF while looking for matching `)'
Build step 'Execute shell' marked build as failure
Fixes:
- Use unquoted delimiter (EOF, not 'EOF') to allow variable expansion in
the content.
- Fix content indentation to avoid unwanted leading whitespace
- Fix location of the EOF - it must be start of the last line
- Add the missing closing ")"
- Remove the unneeded double quote
- Unify indentation to 4 spaces for consistency with the rest of the
file.
[1] https://storage.googleapis.com/minikube-builds/logs/21409/e4af2e4/iso_build.txt
* copy licenses to gh assests as well
* download licneses from github
* try head first to make code more simple
* remove debug
* fix extra dash
* create license directory if doesnt exist
* Apply suggestion from prezha
* Apply suggestion from prezha
* Apply suggestion from prezha
* Apply suggestion from prezha
* krunkit: Add krunkit driver
krunkit is a tool to launch configurable virtual machines using the
libkrun platform, optimized for GPU accelerated virtual machines and AI
workloads on Apple silicon.
It is mostly compatible with vfkit; the driver is a simplified copy of
the vfkit driver. Unlike vfkit, krunkit is available only on Apple
silicon.
Changes compared to vfkit driver:
- krunkit requires unix socket for networking, so we must use
vment-helper.
- krunkit does not support HardStop, so we kill it using SIGKILL.
- We must enable vmnet offloading, required for krunkit.
- The code was simplified since vmnet-helper is always used
- Code was cleaned up to use .ResolveStorePath()
- Unused Upgrade() function was removed
- Types and functions that should not be public made private
We require krunkit 0.2.2, supporting --restul-uri=unix://.
* reason: Make vment-helper error driver agnostic
Previously it was used only for vfkit, so we suggested to fallback to
the `nat` network. This advice is not relevant to krunkit or to qemu
(which can also use vmnet-helper).
Change the error to recommend installing vment-helper. We need to think
how we can recommend other networks for vfkit and qemu. Another solution
is to create error for every driver+network combination but this seems
hard to manage.
* hack: Add krunkit integration test
This is the same way that we test vfkit. This test is not running in the
CI.
Issues:
- Need to install and configure vment-helper (requires root).
* site: Add krunkit driver documentation
* vfkit: Fix help text for --extra-disks
vfkit can use extra disks but we forgot to mention it in the help text.
* vfkit: Remove stale tap
vfkit in cfergeau/crc will no longer be updated now that it’s in the main repo.
* vfkit: Fix status in index
The vfkit driver is preferred now.
* Kicbase/ISO: Update cni-plugins from v1.6.2 to v1.7.1
* Updating kicbase image to v0.0.46-1747341282-20771
* Updating ISO to v1.35.0-1747341198-20771
* Kicbase/ISO: Update cri-dockerd from v0.3.15 to v0.4.0
* Updating kicbase image to v0.0.46-1747166185-20747
* Updating ISO to v1.35.0-1747160120-20747