Skip to content

Commit

Permalink
Remove VBOX_THIRD_PARTY, add GOOS matching
Browse files Browse the repository at this point in the history
  • Loading branch information
tstromberg committed May 3, 2019
2 parents 27cd8b1 + 4af163a commit 32f470f
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 0 deletions.
27 changes: 27 additions & 0 deletions pkg/minikube/problem/err_map.go
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,33 @@ var vmProblems = map[string]match{
Issues: []int{3614},
URL: "https://stackoverflow.com/questions/52277019/how-to-fix-vm-issue-with-minikube-start",
},
"VBOX_BLOCKED_LOADING": {
Regexp: re(`NS_ERROR_FAILURE.*0x80004005`),
Advice: "Reinstall VirtualBox and verify that it is not blocked: System Preferences -> Security & Privacy -> General -> Some system software was blocked from loading",
Issues: []int{4107},
},
"VBOX_KERNEL_MODULE_NOT_LOADED": {
Regexp: re(`The vboxdrv kernel module is not loaded`),
Advice: "Run 'sudo modprobe vboxdrv' and reinstall VirtualBox if it fails.",
Issues: []int{4043},
},
"VBOX_DEVICE_MISSING": {
Regexp: re(`/dev/vboxdrv does not exist`),
Advice: "Run 'sudo modprobe vboxdrv' and reinstall VirtualBox if it fails.",
Issues: []int{3974},
},
"VBOX_HARDENING": {
Regexp: re(`terminated unexpectedly.*VBoxHardening`),
Advice: "Disable real-time anti-virus software, reboot, and reinstall VirtualBox if the problem continues.",
Issues: []int{3859, 3910},
URL: "https://forums.virtualbox.org/viewtopic.php?f=25&t=82106",
},
"VBOX_HOST_ADAPTER": {
Regexp: re(`The host-only adapter we just created is not visible`),
Advice: "Reboot to complete VirtualBox installation, and verify that VirtualBox is not blocked by your system",
Issues: []int{3614},
URL: "https://stackoverflow.com/questions/52277019/how-to-fix-vm-issue-with-minikube-start",
},
"KVM2_NOT_FOUND": {
Regexp: re(`Driver "kvm2" not found. Do you have the plugin binary .* accessible in your PATH`),
Advice: "Please install the minikube kvm2 VM driver, or select an alternative --vm-driver",
Expand Down
66 changes: 66 additions & 0 deletions pkg/minikube/problem/problem_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
/*
Copyright 2019 The Kubernetes Authors All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package problem

import (
"fmt"
"testing"
)

func TestFromError(t *testing.T) {
var tests = []struct {
issue int
os string
want string
err string
}{
{0, "", "", "this is just a lame error message with no matches."},
{3614, "", "VBOX_HOST_ADAPTER", "Error starting host: Error starting stopped host: Error setting up host only network on machine start: The host-only adapter we just created is not visible. This is a well known VirtualBox bug. You might want to uninstall it and reinstall at least version 5.0.12 that is is supposed to fix this issue"},
{3784, "", "VBOX_NOT_FOUND", "create: precreate: VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"},
{3849, "", "IP_NOT_FOUND", "bootstrapper: Error creating new ssh host from driver: Error getting ssh host name for driver: IP not found"},
{3859, "windows", "VBOX_HARDENING", `Unable to start VM: create: creating: Unable to start the VM: C:\Program Files\Oracle\VirtualBox\VBoxManage.exe startvm minikube --type headless failed:
VBoxManage.exe: error: The virtual machine 'minikube' has terminated unexpectedly during startup with exit code -1073741819 (0xc0000005). More details may be available in 'C:\Users\pabitra_b.minikube\machines\minikube\minikube\Logs\VBoxHardening.log'
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component MachineWrap, interface IMachine`},
{3922, "", "ISO_DOWNLOAD_FAILED", `unable to cache ISO: https://storage.googleapis.com/minikube/iso/minikube-v0.35.0.iso: failed to download: failed to download to temp file: download failed: 5 error(s) occurred:
* Temporary download error: Get https://storage.googleapis.com/minikube/iso/minikube-v0.35.0.iso: dial tcp 216.58.207.144:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.`},
{4107, "darwin", "VBOX_BLOCKED", "Result Code: NS_ERROR_FAILURE (0x80004005)"},
}
for _, tc := range tests {
t.Run(tc.want, func(t *testing.T) {
got := FromError(fmt.Errorf(tc.err), tc.os)
if got == nil {
if tc.want != "" {
t.Errorf("FromError(%q)=nil, want %s", tc.err, tc.want)
}
return
}
if got.ID != tc.want {
t.Errorf("FromError(%q)=%s, want %s", tc.err, got.ID, tc.want)
}

found := false
for _, i := range got.Issues {
if i == tc.issue {
found = true
}
}
if !found {
t.Errorf("Issue %d is not listed in %+v", tc.issue, got.Issues)
}
})
}
}

0 comments on commit 32f470f

Please sign in to comment.