build deps: Move hyperv and virtualbox drivers to minikube#21966
build deps: Move hyperv and virtualbox drivers to minikube#21966medyagh merged 3 commits intokubernetes:masterfrom
Conversation
|
Nice to get rid of the old Docker dependencies from the go.mod, when dropping the Docker Machine depends... -github.com/docker/docker v0.0.0-20180621001606-093424bec097/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
-github.com/docker/docker v17.12.0-ce-rc1.0.20181225093023-5ddb1d410a8b+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
-github.com/docker/docker v17.12.0-ce-rc1.0.20190115220918-5ec31380a5d3+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker v28.3.3+incompatible h1:Dypm25kh4rmk49v1eiVbsAtpAsYURjYkaKubwuBdxEI=
github.com/docker/docker v28.3.3+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
...
-github.com/moby/term v0.0.0-20200416134343-063f2cd0b49d/go.mod h1:DdlQx2hp0Ss5/fLikoLlEeIYiATotOjgB//nb973jeo=
github.com/moby/term v0.5.0 h1:xt8Q1nalod/v7BqbG21f8mQPqH+xAaC9C3N3wfWbVP0=
github.com/moby/term v0.5.0/go.mod h1:8FzsFHVUBGZdbDsJw/ot+X+d5HLUbvklYLJ9uGfcI3Y=-github.com/minikube-machine/machine v0.0.0-20251109100456-3b479dcea7a3 h1:LO7khkb1P2LpqCL8GnqPBPn1lZeqA/bqRinjveU2EaQ=
-github.com/minikube-machine/machine v0.0.0-20251109100456-3b479dcea7a3/go.mod h1:wrzTHaSSmyll2TxLCq4mTFL5RJfeFr6qger+VcqNm9g=
-github.com/minikube-machine/machine-driver-parallels/v2 v2.0.2-0.20240730142131-ada9375ea417 h1:f+neTRGCtvmW3Tm1V72vWpoTPuNOnXSQsHZdYOryfGM=
-github.com/minikube-machine/machine-driver-parallels/v2 v2.0.2-0.20240730142131-ada9375ea417/go.mod h1:NKwI5KryEmEHMZVj80t9JQcfXWZp4/ZYNBuw4C5sQ9E=
-github.com/minikube-machine/machine-driver-vmware v0.1.6-0.20230701123042-a391c48b14d5 h1:1z7xOzfMO4aBR9+2nYjlhRXX1773fX60HTS0QGpGRPU=
-github.com/minikube-machine/machine-driver-vmware v0.1.6-0.20230701123042-a391c48b14d5/go.mod h1:HifYFOWR0bAMN4hWtaSADClogvtPy/jV0aRC5alhrKo= |
|
/ok-to-test |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
f184dac to
f7c9a93
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Preparing for making the libmachine API internal
Use the year of the minikube-machine import
Note: we can't change exported errors Since they are used in "known issues"
f7c9a93 to
c29e423
Compare
|
kvm2 driver with docker runtime DetailsTimes for minikube ingress: 15.2s 15.7s 16.3s 15.7s 15.7s Times for minikube start: 39.1s 38.1s 40.6s 37.9s 42.7s docker driver with docker runtime DetailsTimes for minikube ingress: 10.6s 10.6s 10.6s 11.6s 10.6s Times for minikube start: 23.2s 22.7s 23.3s 20.1s 21.1s docker driver with containerd runtime DetailsTimes for minikube start: 21.1s 19.7s 21.3s 22.1s 22.7s Times for minikube ingress: 23.1s 22.1s 23.1s 23.1s 23.1s |
|
@afbjorklund: The following tests failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
Here are the number of top 10 failed tests in each environments with lowest flake rate.
Besides the following environments also have failed tests:
To see the flake rates of all tests by environment, click here. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: afbjorklund, medyagh The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Pull request overview
This PR moves the hyperv and virtualbox drivers from the vendored docker/machine package into the minikube internal codebase under pkg/drivers/. This is part of the broader effort to remove the legacy docker-machine dependency and make the libmachine API internal.
Key changes:
- Moved virtualbox driver code from
vendor/github.com/docker/machine/drivers/virtualbox/topkg/drivers/virtualbox/ - Moved hyperv driver code from
vendor/github.com/docker/machine/drivers/hyperv/topkg/drivers/hyperv/ - Updated import statements in registry files to reference the new internal driver locations
- Promoted
github.com/aregm/cpuidfrom indirect to direct dependency in go.mod
Reviewed changes
Copilot reviewed 28 out of 28 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/minikube/registry/drvs/virtualbox/virtualbox.go | Updated import path from docker/machine to internal pkg/drivers/virtualbox |
| pkg/minikube/registry/drvs/hyperv/hyperv.go | Updated import path from docker/machine to internal pkg/drivers/hyperv |
| pkg/drivers/virtualbox/*.go | Complete virtualbox driver implementation with platform-specific variants and tests |
| pkg/drivers/hyperv/*.go | Complete hyperv driver implementation with PowerShell integration |
| go.mod | Moved cpuid from indirect to direct dependency and added testify as direct dependency |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -0,0 +1,1095 @@ | |||
| /* | |||
| Copyright 2022 The Kubernetes Authors All rights reserved. | |||
There was a problem hiding this comment.
The copyright year is 2022, but this PR is being created in 2025. The copyright year should be updated to 2025 for all newly added files to accurately reflect when the code was introduced to this repository.
| @@ -0,0 +1,531 @@ | |||
| /* | |||
| Copyright 2022 The Kubernetes Authors All rights reserved. | |||
There was a problem hiding this comment.
The copyright year is 2022, but this PR is being created in 2025. The copyright year should be updated to 2025 for all newly added files.
| github.com/Parallels/docker-machine-parallels/v2 v2.0.1 | ||
| github.com/VividCortex/godaemon v1.0.0 | ||
| github.com/Xuanwo/go-locale v1.1.3 | ||
| github.com/aregm/cpuid v0.0.0-20181003105527-1a4a6f06a1c6 |
There was a problem hiding this comment.
The cpuid dependency is being moved from indirect to direct. Ensure that this package (github.com/aregm/cpuid) is still maintained and consider if there's a more recent or better-maintained alternative for CPU feature detection.
| github.com/aregm/cpuid v0.0.0-20181003105527-1a4a6f06a1c6 | |
| github.com/aregm/cpuid v0.0.0-20181003105527-1a4a6f06a1c6 // indirect |
|
@medyagh @afbjorklund just to let you know that this change is breaking 5 virtual box unit tests in windows. Let me share a snippet of the logs |
…s#21966) * Move hyperv and virtualbox drivers to minikube Preparing for making the libmachine API internal * Run the minikube copyright boilerplate script Use the year of the minikube-machine import * Fix lint issues in the imported drivers Note: we can't change exported errors Since they are used in "known issues"
BEFORE
AFTER
Preparing for making the libmachine API internal
Part of the issue to remove legacy docker machine:
The other PR got too big to review, since it did both.
Both imported 4 drivers, and imported libmachine:
We still need to import the other 2 (obsolete) drivers:
github.com/minikube-machine/machine-driver-parallels
github.com/minikube-machine/machine-driver-vmware
Before we can move the libmachine API over to internal.
Or you could delete them instead, to avoid the imports.