* Separate start args from args passed to every command. This is so
that we can call `minikube logs` and `minikube status` with the proper
flags (for the bootstrapper)
* Add a NewMinikubeRunner function to make getting a minikube runner
easier.
Hyperkit was mounting swap disks, which we can't detach with the
hdiutil util like we're using. Its sufficient to just hdiutil detach
/dev/disk1
```
/dev/disk1 FDisk_partition_scheme
/dev/disk1s1 Linux
/dev/disk1s2 Linux_Swap
```
Bad tests that panic won't clean themselves up properly. By putting
these cleanup commands before we run the minikube integration tests, we
ensure that minikube will have a clean environment to run.
These all run in common.sh to make sure that even hypervisors that they
arent testing don't interfere with their own test. OS specific
commands will fail silently.
When changes are made to the ISO folder, rebuild and upload the newly
modified image. Use this uploaded image as the default in the e2e test
binaries, so that the e2e test suite runs against the PR's changes.
TODO: Subsequent PRs (no changes to ISO) will still run against the
default version in the makefile. We should figure out if we want to
always run tests against the "latest" image.
Sometimes gsutil cp -r can miss files. We also don't need to copy over
every file. Additionally, I started to abstract the OS_ARCH away so
that we can more easily template the jenkins OS tests.