Skip to content

Commit f680057

Browse files
authored
Merge pull request #9958 from tstromberg/vmwarefusion
Remove obsolete 'vmwarefusion' driver, add friendly message
2 parents e678fb1 + e5f06a1 commit f680057

File tree

5 files changed

+19
-36
lines changed

5 files changed

+19
-36
lines changed

cmd/minikube/cmd/start.go

+10
Original file line numberDiff line numberDiff line change
@@ -702,6 +702,16 @@ func validateDriver(ds registry.DriverState, existing *config.ClusterConfig) {
702702
out.Step(style.Improvement, `For improved {{.driver}} performance, {{.fix}}`, out.V{"driver": driver.FullName(ds.Name), "fix": translate.T(st.Fix)})
703703
}
704704

705+
if ds.Priority == registry.Obsolete {
706+
exit.Message(reason.Kind{
707+
ID: fmt.Sprintf("PROVIDER_%s_OBSOLETE", strings.ToUpper(name)),
708+
Advice: translate.T(st.Fix),
709+
ExitCode: reason.ExProviderUnsupported,
710+
URL: st.Doc,
711+
Style: style.Shrug,
712+
}, st.Error.Error())
713+
}
714+
705715
if st.Error == nil {
706716
return
707717
}

pkg/minikube/driver/driver.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ const (
4747
HyperKit = "hyperkit"
4848
// VMware driver
4949
VMware = "vmware"
50-
// VMwareFusion driver
50+
// VMwareFusion driver (obsolete)
5151
VMwareFusion = "vmwarefusion"
5252
// HyperV driver
5353
HyperV = "hyperv"

pkg/minikube/machine/start.go

-7
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ import (
3434
"github.com/docker/machine/libmachine/host"
3535
"github.com/juju/mutex"
3636
"github.com/pkg/errors"
37-
"github.com/spf13/viper"
3837
"k8s.io/klog/v2"
3938
"k8s.io/minikube/pkg/drivers/kic/oci"
4039
"k8s.io/minikube/pkg/minikube/command"
@@ -130,12 +129,6 @@ func createHost(api libmachine.API, cfg *config.ClusterConfig, n *config.Node) (
130129
klog.Infof("duration metric: createHost completed in %s", time.Since(start))
131130
}()
132131

133-
if cfg.Driver == driver.VMwareFusion && viper.GetBool(config.ShowDriverDeprecationNotification) {
134-
out.WarningT(`The vmwarefusion driver is deprecated and support for it will be removed in a future release.
135-
Please consider switching to the new vmware unified driver, which is intended to replace the vmwarefusion driver.
136-
See https://minikube.sigs.k8s.io/docs/reference/drivers/vmware/ for more information.
137-
To disable this message, run [minikube config set ShowDriverDeprecationNotification false]`)
138-
}
139132
showHostInfo(*cfg)
140133
def := registry.Driver(cfg.Driver)
141134
if def.Empty() {

pkg/minikube/registry/drvs/vmwarefusion/vmwarefusion.go

+6-28
Original file line numberDiff line numberDiff line change
@@ -16,52 +16,30 @@ See the License for the specific language governing permissions and
1616
limitations under the License.
1717
*/
1818

19+
// vmwarefusion contains a shell of the deprecated vmware vdriver
1920
package vmwarefusion
2021

2122
import (
2223
"fmt"
23-
"os/exec"
2424

25-
"github.com/docker/machine/drivers/vmwarefusion"
26-
"github.com/docker/machine/libmachine/drivers"
27-
"github.com/pkg/errors"
28-
29-
"k8s.io/minikube/pkg/minikube/config"
30-
"k8s.io/minikube/pkg/minikube/download"
3125
"k8s.io/minikube/pkg/minikube/driver"
32-
"k8s.io/minikube/pkg/minikube/localpath"
3326
"k8s.io/minikube/pkg/minikube/registry"
3427
)
3528

3629
func init() {
3730
if err := registry.Register(registry.DriverDef{
3831
Name: driver.VMwareFusion,
39-
Config: configure,
4032
Status: status,
41-
Init: func() drivers.Driver { return vmwarefusion.NewDriver("", "") },
42-
Priority: registry.Deprecated,
33+
Priority: registry.Obsolete,
4334
}); err != nil {
4435
panic(fmt.Sprintf("register: %v", err))
4536
}
4637
}
4738

48-
func configure(cfg config.ClusterConfig, n config.Node) (interface{}, error) {
49-
d := vmwarefusion.NewDriver(driver.MachineName(cfg, n), localpath.MiniPath()).(*vmwarefusion.Driver)
50-
d.Boot2DockerURL = download.LocalISOResource(cfg.MinikubeISO)
51-
d.Memory = cfg.Memory
52-
d.CPU = cfg.CPUs
53-
d.DiskSize = cfg.DiskSize
54-
55-
// TODO(philips): push these defaults upstream to fixup this driver
56-
d.SSHPort = 22
57-
d.ISO = d.ResolveStorePath("boot2docker.iso")
58-
return d, nil
59-
}
60-
6139
func status() registry.State {
62-
_, err := exec.LookPath("vmrun")
63-
if err != nil {
64-
return registry.State{Error: errors.Wrap(err, "vmrun path check"), Fix: "Install VMWare Fusion", Doc: "https://minikube.sigs.k8s.io/docs/reference/drivers/vmwarefusion/"}
40+
return registry.State{
41+
Error: fmt.Errorf("The 'vmwarefusion' driver is no longer available"),
42+
Fix: "Switch to the newer 'vmware' driver by using '--driver=vmware'. This may require first deleting your existing cluster",
43+
Doc: "https://minikube.sigs.k8s.io/docs/drivers/vmware/",
6544
}
66-
return registry.State{Installed: true, Healthy: true}
6745
}

pkg/minikube/registry/registry.go

+2
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ type Priority int
3131
const (
3232
// Unknown is when there is no status check available
3333
Unknown Priority = iota
34+
// Obsolete is when a driver has been removed
35+
Obsolete
3436
// Unhealthy is when a driver does not pass health checks
3537
Unhealthy
3638
// Experimental is when a driver is not officially supported because it's still experimental

0 commit comments

Comments
 (0)