Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request #7604: use native docker bind mounts with driver-mounts option #8136

Closed
wants to merge 2 commits into from

Conversation

g9rga
Copy link

@g9rga g9rga commented May 13, 2020

Hello everyone! I added new feature for native driver mount --driver-mounts by request #7604.
At this pr, only docker driver supported. Usage example:
minikube start --driver=docker --driver-mounts=/tmp:/opt/tmp

Here is test example output:
(⎈ |N/A:default)➜ minikube git:(fix-7604) mkdir /tmp/123
(⎈ |N/A:default)➜ minikube git:(fix-7604) echo "test" > /tmp/123/file.txt
(⎈ |N/A:default)➜ minikube git:(fix-7604) ./out/minikube-linux-amd64 start -p minikube-test --driver=docker --driver-mounts="/tmp/123:/tmp/123:rw"
😄 [minikube-test] minikube v1.12.1 on Arch 20.0.3
▪ KUBECONFIG=/home/eth/.kube/config
✨ Using the docker driver based on user configuration
👍 Starting control plane node minikube-test in cluster minikube-test
🚜 Pulling base image ...
💾 Downloading Kubernetes v1.18.3 preload ...
> preloaded-images-k8s-v4-v1.18.3-docker-overlay2-amd64.tar.lz4: 526.27 MiB
🔥 Creating docker container (CPUs=2, Memory=3900MB) ...
🐳 Preparing Kubernetes v1.18.3 on Docker 19.03.8 ...
🔎 Verifying Kubernetes components...
🌟 Enabled addons: default-storageclass, storage-provisioner
🏄 Done! kubectl is now configured to use "minikube-test"
(⎈ |minikube-test:default)➜ minikube git:(fix-7604) docker inspect -f '{{ .Mounts }}' minikube-test
[{bind /lib/modules /lib/modules ro false rprivate} {volume minikube-test /var/lib/docker/volumes/minikube-test/_data /var local z true } {bind /tmp/123 /tmp/123 true rprivate}]
(⎈ |minikube-test:default)➜ minikube git:(fix-7604) docker exec minikube-test ls /tmp/123
file.txt
(⎈ |minikube-test:default)➜ minikube git:(fix-7604) docker exec minikube-test cat /tmp/123/file.txt
test
(⎈ |minikube-test:default)➜ minikube git:(fix-7604) docker exec minikube-test sh -c "echo 123 > /tmp/123/file.txt"
(⎈ |minikube-test:default)➜ minikube git:(fix-7604) echo /tmp/123/file.txt
/tmp/123/file.txt
(⎈ |minikube-test:default)➜ minikube git:(fix-7604)

Screenshot_20200802_111301

@k8s-ci-robot
Copy link
Contributor

Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA.

It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.


Instructions 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/test-infra repository. I understand the commands that are listed here.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. label May 13, 2020
@k8s-ci-robot
Copy link
Contributor

Welcome @g9rga!

It looks like this is your first PR to kubernetes/minikube 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes/minikube has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. 😃

@k8s-ci-robot
Copy link
Contributor

Hi @g9rga. Thanks for your PR.

I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions 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/test-infra repository.

@k8s-ci-robot k8s-ci-robot added needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels May 13, 2020
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: g9rga
To complete the pull request process, please assign josedonizetti
You can assign the PR to them by writing /assign @josedonizetti in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@minikube-bot
Copy link
Collaborator

Can one of the admins verify this patch?

@afbjorklund
Copy link
Collaborator

It would be nice if we could do something slightly more portable, instead of adding more docker-only flags ? Not really looking forward to duplicating all of these for podman, like we did for docker-env

@@ -101,6 +101,7 @@ const (
deleteOnFailure = "delete-on-failure"
forceSystemd = "force-systemd"
kicBaseImage = "base-image"
dockerMounts = "docker-mounts"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

any chance we use the same flag as the one we use for the VMs ?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean --mount-string option or something else?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am open to any solution that doesn't make it docker driver specifi.
--mount-string could be a solution
or maybe --mount-option

Copy link
Contributor

@Asarew Asarew May 19, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with @afbjorklund statements in the #8159 (comment).
The --docker-mounts has different attributes like the options for read-only, rslave, etc. i think adding this logic behind the --mount-string won't make the implementation more uniform as the options only applies for the container drivers.
and also:

I don't think we will make it generic anyway, so it is "both" rather than "any" - see #7957

@medyagh
Copy link
Member

medyagh commented May 15, 2020

I agree with @afbjorklund , we should try to make this not docker secific. on these both PRs

I wonder if we should the existing "-mount-string" option on start? instead of making it docker-specific flag?

@g9rga g9rga changed the title Feature request #7604: add docker driver driver-mounts option Feature request #7604: use native docker bind mounts with mount-string option May 18, 2020
@g9rga
Copy link
Author

g9rga commented May 18, 2020

@medyagh @afbjorklund thank you for your proposal. I refactored my PR to use existing option mount-string. On minikube start it will use native docker bind mount, instead of 9pfs(mount command). Is it ok?

@ptramsey
Copy link

ptramsey commented Jun 9, 2020

Hi! Just wanted to say thank you for doing this work! Is there anything I can do to help this along? I'd love to see this landed!

@g9rga
Copy link
Author

g9rga commented Jun 9, 2020

@medyagh @afbjorklund what about --driver-mounts option? Format will depend on driver type.

@medyagh
Copy link
Member

medyagh commented Jun 9, 2020

@g9rga do you mind adding an example of using this command in the PR description so I could test it?
or is it possible to add an integration test for it?

@TravisBuddy
Copy link

Travis tests have failed

Hey @g9rga,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.

1st Build

View build log

make test
which go-bindata || GO111MODULE=off GOBIN="/home/travis/gopath/bin" go get github.com/jteeuwen/go-bindata/...
PATH="/home/travis/gopath/bin:/home/travis/.gimme/versions/go1.13.8.linux.amd64/bin:/home/travis/bin:/home/travis/bin:/home/travis/.local/bin:/usr/local/lib/jvm/openjdk11/bin:/opt/pyenv/shims:/home/travis/.phpenv/shims:/home/travis/perl5/perlbrew/bin:/home/travis/.nvm/versions/node/v8.12.0/bin:/home/travis/.rvm/gems/ruby-2.5.3/bin:/home/travis/.rvm/gems/ruby-2.5.3@global/bin:/home/travis/.rvm/rubies/ruby-2.5.3/bin:/home/travis/gopath/bin:/home/travis/.gimme/versions/go1.11.1.linux.amd64/bin:/usr/local/maven-3.6.0/bin:/usr/local/cmake-3.12.4/bin:/usr/local/clang-7.0.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/home/travis/.rvm/bin:/home/travis/.phpenv/bin:/opt/pyenv/bin:/home/travis/.yarn/bin:/home/travis/gopath/bin" go-bindata -nomemcopy -o pkg/minikube/assets/assets.go -pkg assets deploy/addons/...
gofmt -s -w pkg/minikube/assets/assets.go
which go-bindata || GO111MODULE=off GOBIN="/home/travis/gopath/bin" go get github.com/jteeuwen/go-bindata/...
/home/travis/gopath/bin/go-bindata
PATH="/home/travis/gopath/bin:/home/travis/.gimme/versions/go1.13.8.linux.amd64/bin:/home/travis/bin:/home/travis/bin:/home/travis/.local/bin:/usr/local/lib/jvm/openjdk11/bin:/opt/pyenv/shims:/home/travis/.phpenv/shims:/home/travis/perl5/perlbrew/bin:/home/travis/.nvm/versions/node/v8.12.0/bin:/home/travis/.rvm/gems/ruby-2.5.3/bin:/home/travis/.rvm/gems/ruby-2.5.3@global/bin:/home/travis/.rvm/rubies/ruby-2.5.3/bin:/home/travis/gopath/bin:/home/travis/.gimme/versions/go1.11.1.linux.amd64/bin:/usr/local/maven-3.6.0/bin:/usr/local/cmake-3.12.4/bin:/usr/local/clang-7.0.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/home/travis/.rvm/bin:/home/travis/.phpenv/bin:/opt/pyenv/bin:/home/travis/.yarn/bin:/home/travis/gopath/bin" go-bindata -nomemcopy -o pkg/minikube/translate/translations.go -pkg translate translations/...
gofmt -s -w pkg/minikube/translate/translations.go
MINIKUBE_LDFLAGS="-X k8s.io/minikube/pkg/version.version=v1.11.0 -X k8s.io/minikube/pkg/version.isoVersion=v1.11.0 -X k8s.io/minikube/pkg/version.isoPath=minikube/iso -X k8s.io/minikube/pkg/version.gitCommitID="51b60215bd91df37ac817404e5b52a8726e7f559"" ./test.sh
= schema_check ==========================================================
go: downloading github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f
go: extracting github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f
go: downloading github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415
go: extracting github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415
go: downloading github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f
go: extracting github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f
go: finding github.com/xeipuuv/gojsonschema v0.0.0-20180618132009-1d523034197f
go: finding github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415
go: finding github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f
ok
= go test ===============================================================
go: downloading github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
go: downloading github.com/machine-drivers/machine v0.7.1-0.20200323212942-41eb826190d8
go: downloading github.com/juju/mutex v0.0.0-20180619145857-d21b13acf4bf
go: downloading github.com/blang/semver v3.5.0+incompatible
go: downloading k8s.io/apimachinery v0.17.3
go: downloading github.com/docker/go-units v0.4.0
go: downloading github.com/spf13/cobra v1.0.0
go: downloading github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7
go: extracting github.com/docker/go-units v0.4.0
go: extracting github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
go: downloading k8s.io/client-go v0.17.3
go: extracting github.com/juju/mutex v0.0.0-20180619145857-d21b13acf4bf
go: extracting github.com/blang/semver v3.5.0+incompatible
go: downloading github.com/pkg/errors v0.9.1
go: extracting github.com/spf13/cobra v1.0.0
go: downloading github.com/olekukonko/tablewriter v0.0.4
go: extracting github.com/machine-drivers/machine v0.7.1-0.20200323212942-41eb826190d8
go: extracting github.com/olekukonko/tablewriter v0.0.4
go: extracting github.com/pkg/errors v0.9.1
go: downloading k8s.io/api v0.17.3
go: downloading golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
go: extracting golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
go: extracting k8s.io/apimachinery v0.17.3
go: downloading golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37
go: extracting k8s.io/client-go v0.17.3
go: extracting golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37
go: downloading github.com/mattn/go-isatty v0.0.12
go: downloading github.com/mattn/go-runewidth v0.0.7
go: downloading github.com/shirou/gopsutil v2.18.12+incompatible
go: extracting github.com/mattn/go-isatty v0.0.12
go: extracting github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7
go: extracting github.com/mattn/go-runewidth v0.0.7
go: downloading github.com/spf13/viper v1.7.0
go: downloading github.com/juju/errors v0.0.0-20190806202954-0232dcc7464d
go: downloading github.com/afbjorklund/go-containerregistry v0.0.0-20200602203322-347d93793dc9
go: downloading github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
go: extracting k8s.io/api v0.17.3
go: extracting github.com/juju/errors v0.0.0-20190806202954-0232dcc7464d
go: extracting github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
go: downloading github.com/juju/clock v0.0.0-20190205081909-9c5c9712527c
go: downloading k8s.io/klog v1.0.0
go: extracting github.com/spf13/viper v1.7.0
go: downloading github.com/golang-collections/collections v0.0.0-20130729185459-604e922904d3
go: extracting github.com/shirou/gopsutil v2.18.12+incompatible
go: extracting github.com/golang-collections/collections v0.0.0-20130729185459-604e922904d3
go: downloading github.com/gogo/protobuf v1.3.1
go: extracting github.com/juju/clock v0.0.0-20190205081909-9c5c9712527c
go: downloading golang.org/x/text v0.3.2
go: extracting github.com/afbjorklund/go-containerregistry v0.0.0-20200602203322-347d93793dc9
go: extracting k8s.io/klog v1.0.0
go: downloading github.com/cheggaaa/pb v1.0.27
go: extracting github.com/cheggaaa/pb v1.0.27
go: downloading github.com/cheggaaa/pb/v3 v3.0.1
go: extracting github.com/cheggaaa/pb/v3 v3.0.1
go: downloading github.com/magiconair/properties v1.8.1
go: extracting github.com/magiconair/properties v1.8.1
go: downloading golang.org/x/sys v0.0.0-20200523222454-059865788121
go: downloading github.com/sayboras/dockerclient v0.0.0-20191231050035-015626177a97
go: extracting github.com/sayboras/dockerclient v0.0.0-20191231050035-015626177a97
go: downloading k8s.io/kubectl v0.17.3
go: downloading github.com/spf13/cast v1.3.1
go: downloading sigs.k8s.io/sig-storage-lib-external-provisioner v4.0.0+incompatible
go: downloading github.com/VividCortex/ewma v1.1.1
go: downloading k8s.io/kubernetes v1.17.3
go: downloading sigs.k8s.io/yaml v1.1.0
go: extracting github.com/VividCortex/ewma v1.1.1
go: extracting github.com/spf13/cast v1.3.1
go: downloading github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
go: extracting sigs.k8s.io/yaml v1.1.0
go: downloading github.com/mitchellh/mapstructure v1.3.1
go: extracting github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
go: downloading github.com/imdario/mergo v0.3.9
go: extracting github.com/gogo/protobuf v1.3.1
go: extracting github.com/imdario/mergo v0.3.9
go: downloading cloud.google.com/go v0.57.0
go: extracting golang.org/x/sys v0.0.0-20200523222454-059865788121
go: extracting sigs.k8s.io/sig-storage-lib-external-provisioner v4.0.0+incompatible
go: downloading github.com/prometheus/client_golang v1.1.0
go: extracting github.com/mitchellh/mapstructure v1.3.1
go: downloading github.com/pkg/profile v0.0.0-20161223203901-3a8809bd8a80
go: extracting github.com/pkg/profile v0.0.0-20161223203901-3a8809bd8a80
go: downloading github.com/docker/distribution v2.7.1+incompatible
go: extracting github.com/prometheus/client_golang v1.1.0
go: downloading github.com/google/gofuzz v1.0.0
go: extracting github.com/google/gofuzz v1.0.0
go: downloading github.com/docker/cli v0.0.0-20200303162255-7d407207c304
go: extracting github.com/docker/distribution v2.7.1+incompatible
go: downloading github.com/machine-drivers/docker-machine-driver-vmware v0.1.1
go: extracting k8s.io/kubectl v0.17.3
go: extracting cloud.google.com/go v0.57.0
go: downloading gopkg.in/yaml.v2 v2.3.0
go: extracting github.com/machine-drivers/docker-machine-driver-vmware v0.1.1
go: downloading github.com/fatih/color v1.9.0
go: extracting gopkg.in/yaml.v2 v2.3.0
go: downloading github.com/pkg/browser v0.0.0-20160118053552-9302be274faa
go: extracting github.com/fatih/color v1.9.0
go: extracting github.com/pkg/browser v0.0.0-20160118053552-9302be274faa
go: downloading github.com/davecgh/go-spew v1.1.1
go: downloading github.com/docker/go-connections v0.4.0
go: downloading golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2
go: downloading github.com/opencontainers/go-digest v1.0.0-rc1
go: extracting golang.org/x/text v0.3.2
go: downloading cloud.google.com/go/storage v1.8.0
go: extracting github.com/davecgh/go-spew v1.1.1
go: extracting github.com/opencontainers/go-digest v1.0.0-rc1
go: downloading github.com/pelletier/go-toml v1.8.0
go: extracting github.com/docker/cli v0.0.0-20200303162255-7d407207c304
go: extracting github.com/docker/go-connections v0.4.0
go: downloading github.com/golang/protobuf v1.4.2
go: downloading github.com/beorn7/perks v1.0.1
go: extracting cloud.google.com/go/storage v1.8.0
go: extracting github.com/beorn7/perks v1.0.1
go: downloading github.com/otiai10/copy v1.0.2
go: extracting github.com/otiai10/copy v1.0.2
go: extracting github.com/pelletier/go-toml v1.8.0
go: downloading github.com/mitchellh/go-ps v0.0.0-20190716172923-621e5597135b
go: downloading github.com/opencontainers/image-spec v1.0.1
go: downloading github.com/miekg/dns v1.1.4
go: extracting github.com/mitchellh/go-ps v0.0.0-20190716172923-621e5597135b
go: downloading gopkg.in/ini.v1 v1.56.0
go: downloading k8s.io/utils v0.0.0-20200229041039-0a110f9eb7ab
go: extracting github.com/opencontainers/image-spec v1.0.1
go: extracting github.com/golang/protobuf v1.4.2
go: extracting github.com/miekg/dns v1.1.4
go: extracting gopkg.in/ini.v1 v1.56.0
go: downloading github.com/prometheus/common v0.6.0
go: downloading google.golang.org/api v0.25.0
go: downloading google.golang.org/protobuf v1.24.0
go: downloading github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4
go: extracting k8s.io/utils v0.0.0-20200229041039-0a110f9eb7ab
go: downloading github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2
go: extracting github.com/prometheus/common v0.6.0
go: extracting golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2
go: extracting github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2
go: downloading github.com/google/slowjam v0.0.0-20200530021616-df27e642fe7b
go: extracting github.com/google/slowjam v0.0.0-20200530021616-df27e642fe7b
go: extracting github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4
go: downloading github.com/hashicorp/hcl v1.0.0
go: downloading golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1
go: downloading github.com/modern-go/reflect2 v1.0.1
go: extracting golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1
go: downloading github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6
go: extracting github.com/hashicorp/hcl v1.0.0
go: downloading github.com/matttproud/golang_protobuf_extensions v1.0.1
go: extracting github.com/modern-go/reflect2 v1.0.1
go: extracting github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6
go: extracting github.com/matttproud/golang_protobuf_extensions v1.0.1
go: downloading google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece
go: downloading github.com/hooklift/iso9660 v0.0.0-20170318115843-1cf07e5970d8
go: downloading github.com/hashicorp/golang-lru v0.5.3
go: extracting github.com/hooklift/iso9660 v0.0.0-20170318115843-1cf07e5970d8
go: downloading github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go: extracting github.com/hashicorp/golang-lru v0.5.3
go: downloading github.com/google/uuid v1.1.1
go: extracting google.golang.org/protobuf v1.24.0
go: extracting github.com/google/uuid v1.1.1
go: downloading github.com/mattn/go-colorable v0.1.6
go: extracting github.com/mattn/go-colorable v0.1.6
go: downloading github.com/docker/docker-credential-helpers v0.6.3
go: extracting github.com/docker/docker-credential-helpers v0.6.3
go: extracting github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go: downloading github.com/googleapis/gax-go v2.0.2+incompatible
go: downloading github.com/prometheus/procfs v0.0.5
go: downloading github.com/cenkalti/backoff v2.2.1+incompatible
go: extracting github.com/cenkalti/backoff v2.2.1+incompatible
go: downloading github.com/json-iterator/go v1.1.8
go: extracting github.com/googleapis/gax-go v2.0.2+incompatible
go: downloading github.com/googleapis/gax-go/v2 v2.0.5
go: extracting github.com/prometheus/procfs v0.0.5
go: downloading gopkg.in/inf.v0 v0.9.1
go: extracting github.com/googleapis/gax-go/v2 v2.0.5
go: downloading github.com/spf13/jwalterweatherman v1.1.0
go: extracting github.com/json-iterator/go v1.1.8
go: downloading github.com/libvirt/libvirt-go v3.4.0+incompatible
go: extracting gopkg.in/inf.v0 v0.9.1
go: downloading github.com/MakeNowJust/heredoc v0.0.0-20170808103936-bb23615498cd
go: extracting github.com/spf13/jwalterweatherman v1.1.0
go: downloading github.com/afbjorklund/go-getter v1.4.1-0.20190910175809-eb9f6c26742c
go: extracting github.com/libvirt/libvirt-go v3.4.0+incompatible
go: extracting github.com/afbjorklund/go-getter v1.4.1-0.20190910175809-eb9f6c26742c
go: downloading github.com/mitchellh/go-wordwrap v1.0.0
go: extracting github.com/MakeNowJust/heredoc v0.0.0-20170808103936-bb23615498cd
go: downloading google.golang.org/grpc v1.29.1
go: downloading github.com/aws/aws-sdk-go v1.31.6
go: extracting github.com/mitchellh/go-wordwrap v1.0.0
go: downloading github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
go: extracting k8s.io/kubernetes v1.17.3
go: extracting github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
go: extracting google.golang.org/grpc v1.29.1
go: downloading github.com/hashicorp/go-version v1.2.0
go: extracting github.com/hashicorp/go-version v1.2.0
go: downloading github.com/spf13/afero v1.2.2
go: extracting github.com/spf13/afero v1.2.2
go: downloading github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96
go: downloading github.com/c4milo/gotoolkit v0.0.0-20170318115440-bcc06269efa9
go: extracting google.golang.org/api v0.25.0
go: extracting google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece
go: extracting github.com/aws/aws-sdk-go v1.31.6
go: extracting github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96
go: downloading go.opencensus.io v0.22.3
go: extracting github.com/c4milo/gotoolkit v0.0.0-20170318115440-bcc06269efa9
go: downloading github.com/subosito/gotenv v1.2.0
go: downloading github.com/hashicorp/go-cleanhttp v0.5.1
go: downloading k8s.io/component-base v0.17.3
go: downloading golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
go: downloading github.com/ulikunitz/xz v0.5.7
go: downloading k8s.io/cluster-bootstrap v0.17.3
go: downloading github.com/spf13/pflag v1.0.5
go: downloading github.com/mitchellh/go-testing-interface v1.0.0
go: downloading github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57
go: extracting github.com/subosito/gotenv v1.2.0
go: downloading github.com/google/go-cmp v0.4.1
go: extracting go.opencensus.io v0.22.3
go: extracting k8s.io/cluster-bootstrap v0.17.3
go: extracting golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
go: extracting github.com/mitchellh/go-testing-interface v1.0.0
go: extracting github.com/hashicorp/go-cleanhttp v0.5.1
go: downloading github.com/cpuguy83/go-md2man v1.0.10
go: downloading github.com/intel-go/cpuid v0.0.0-20181003105527-1a4a6f06a1c6
go: downloading github.com/fsnotify/fsnotify v1.4.9
go: downloading github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d
go: downloading github.com/googleapis/gnostic v0.3.0
go: extracting github.com/ulikunitz/xz v0.5.7
go: extracting github.com/spf13/pflag v1.0.5
go: extracting k8s.io/component-base v0.17.3
go: extracting github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57
go: downloading github.com/mitchellh/go-homedir v1.1.0
go: downloading github.com/sirupsen/logrus v1.6.0
go: downloading k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a
go: downloading github.com/hashicorp/go-safetemp v1.0.0
go: extracting github.com/fsnotify/fsnotify v1.4.9
go: extracting github.com/cpuguy83/go-md2man v1.0.10
go: extracting github.com/google/go-cmp v0.4.1
go: downloading github.com/cpuguy83/go-md2man/v2 v2.0.0
go: downloading github.com/jmespath/go-jmespath v0.3.0
go: extracting github.com/googleapis/gnostic v0.3.0
go: extracting github.com/intel-go/cpuid v0.0.0-20181003105527-1a4a6f06a1c6
go: downloading k8s.io/kube-proxy v0.17.3
go: downloading k8s.io/kubelet v0.17.3
go: extracting github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d
go: extracting github.com/hashicorp/go-safetemp v1.0.0
go: extracting github.com/mitchellh/go-homedir v1.1.0
go: extracting github.com/sirupsen/logrus v1.6.0
go: extracting k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a
go: extracting github.com/jmespath/go-jmespath v0.3.0
go: extracting k8s.io/kubelet v0.17.3
go: extracting k8s.io/kube-proxy v0.17.3
go: extracting github.com/cpuguy83/go-md2man/v2 v2.0.0
go: downloading github.com/russross/blackfriday/v2 v2.0.1
go: extracting github.com/russross/blackfriday/v2 v2.0.1
go: downloading github.com/shurcooL/sanitized_anchor_name v1.0.0
go: extracting github.com/shurcooL/sanitized_anchor_name v1.0.0
go: finding github.com/machine-drivers/machine v0.7.1-0.20200323212942-41eb826190d8
go: finding github.com/golang-collections/collections v0.0.0-20130729185459-604e922904d3
go: finding github.com/pkg/errors v0.9.1
go: finding github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b
go: finding github.com/google/slowjam v0.0.0-20200530021616-df27e642fe7b
go: finding github.com/pkg/profile v0.0.0-20161223203901-3a8809bd8a80
go: finding github.com/docker/go-units v0.4.0
go: finding github.com/spf13/cobra v1.0.0
go: finding github.com/olekukonko/tablewriter v0.0.4
go: finding github.com/blang/semver v3.5.0+incompatible
go: finding k8s.io/client-go v0.17.3
go: finding github.com/hooklift/iso9660 v0.0.0-20170318115843-1cf07e5970d8
go: finding github.com/spf13/viper v1.7.0
go: finding github.com/libvirt/libvirt-go v3.4.0+incompatible
go: finding golang.org/x/crypto v0.0.0-20200510223506-06a226fb4e37
go: finding github.com/mattn/go-runewidth v0.0.7
go: finding github.com/juju/clock v0.0.0-20190205081909-9c5c9712527c
go: finding k8s.io/api v0.17.3
go: finding github.com/imdario/mergo v0.3.9
go: finding github.com/juju/mutex v0.0.0-20180619145857-d21b13acf4bf
go: finding k8s.io/apimachinery v0.17.3
go: finding github.com/mattn/go-isatty v0.0.12
go: finding github.com/spf13/pflag v1.0.5
go: finding golang.org/x/sys v0.0.0-20200523222454-059865788121
go: finding github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7
go: finding github.com/juju/errors v0.0.0-20190806202954-0232dcc7464d
go: finding github.com/gogo/protobuf v1.3.1
go: finding github.com/c4milo/gotoolkit v0.0.0-20170318115440-bcc06269efa9
go: finding github.com/afbjorklund/go-containerregistry v0.0.0-20200602203322-347d93793dc9
go: finding github.com/google/uuid v1.1.1
go: finding github.com/fsnotify/fsnotify v1.4.9
go: finding github.com/docker/cli v0.0.0-20200303162255-7d407207c304
go: finding github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
go: finding github.com/hashicorp/hcl v1.0.0
go: finding github.com/pkg/browser v0.0.0-20160118053552-9302be274faa
go: finding github.com/mitchellh/go-ps v0.0.0-20190716172923-621e5597135b
go: finding github.com/shirou/gopsutil v2.18.12+incompatible
go: finding github.com/magiconair/properties v1.8.1
go: finding cloud.google.com/go/storage v1.8.0
go: finding github.com/google/gofuzz v1.0.0
go: finding github.com/cloudfoundry-attic/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
go: finding github.com/mitchellh/mapstructure v1.3.1
go: finding golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
go: finding sigs.k8s.io/sig-storage-lib-external-provisioner v4.0.0+incompatible
go: finding github.com/machine-drivers/docker-machine-driver-vmware v0.1.1
go: finding k8s.io/klog v1.0.0
go: finding github.com/pelletier/go-toml v1.8.0
go: finding github.com/cpuguy83/go-md2man/v2 v2.0.0
go: finding github.com/otiai10/copy v1.0.2
go: finding github.com/cenkalti/backoff v2.2.1+incompatible
go: finding cloud.google.com/go v0.57.0
go: finding github.com/golang/protobuf v1.4.2
go: finding gopkg.in/inf.v0 v0.9.1
go: finding golang.org/x/text v0.3.2
go: finding github.com/docker/docker-credential-helpers v0.6.3
go: finding github.com/docker/distribution v2.7.1+incompatible
go: finding github.com/spf13/afero v1.2.2
go: finding github.com/googleapis/gnostic v0.3.0
go: finding github.com/spf13/cast v1.3.1
go: finding github.com/russross/blackfriday/v2 v2.0.1
go: finding golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2
go: finding github.com/prometheus/client_golang v1.1.0
go: finding github.com/spf13/jwalterweatherman v1.1.0
go: finding k8s.io/kubernetes v1.17.3
go: finding gopkg.in/yaml.v2 v2.3.0
go: finding github.com/googleapis/gax-go/v2 v2.0.5
go: finding github.com/intel-go/cpuid v0.0.0-20181003105527-1a4a6f06a1c6
go: finding golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1
go: finding github.com/cheggaaa/pb/v3 v3.0.1
go: finding google.golang.org/genproto v0.0.0-20200527145253-8367513e4ece
go: finding github.com/opencontainers/go-digest v1.0.0-rc1
go: finding github.com/subosito/gotenv v1.2.0
go: finding github.com/shurcooL/sanitized_anchor_name v1.0.0
go: finding google.golang.org/api v0.25.0
go: finding google.golang.org/grpc v1.29.1
go: finding gopkg.in/ini.v1 v1.56.0
go: finding google.golang.org/protobuf v1.24.0
go: finding go.opencensus.io v0.22.3
go: finding github.com/afbjorklund/go-getter v1.4.1-0.20190910175809-eb9f6c26742c
go: finding github.com/VividCortex/ewma v1.1.1
go: finding k8s.io/component-base v0.17.3
go: finding github.com/docker/go-connections v0.4.0
go: finding k8s.io/kubectl v0.17.3
go: finding github.com/json-iterator/go v1.1.8
go: finding github.com/beorn7/perks v1.0.1
go: finding github.com/fatih/color v1.9.0
go: finding github.com/modern-go/reflect2 v1.0.1
go: finding github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4
go: finding github.com/mattn/go-colorable v0.1.6
go: finding github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go: finding github.com/opencontainers/image-spec v1.0.1
go: finding github.com/MakeNowJust/heredoc v0.0.0-20170808103936-bb23615498cd
go: finding github.com/prometheus/common v0.6.0
go: finding github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
go: finding github.com/sayboras/dockerclient v0.0.0-20191231050035-015626177a97
go: finding github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6
go: finding golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
go: finding github.com/containerd/containerd v1.3.1-0.20191213020239-082f7e3aed57
go: finding github.com/davecgh/go-spew v1.1.1
go: finding github.com/sirupsen/logrus v1.6.0
go: finding github.com/prometheus/procfs v0.0.5
go: finding k8s.io/cluster-bootstrap v0.17.3
go: finding github.com/matttproud/golang_protobuf_extensions v1.0.1
go: finding k8s.io/utils v0.0.0-20200229041039-0a110f9eb7ab
go: finding sigs.k8s.io/yaml v1.1.0
go: finding github.com/mitchellh/go-wordwrap v1.0.0
go: finding github.com/aws/aws-sdk-go v1.31.6
go: finding k8s.io/kube-proxy v0.17.3
go: finding k8s.io/kubelet v0.17.3
go: finding github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d
go: finding github.com/hashicorp/go-cleanhttp v0.5.1
go: finding github.com/miekg/dns v1.1.4
go: finding github.com/hashicorp/go-safetemp v1.0.0
go: finding github.com/hashicorp/go-version v1.2.0
go: finding github.com/mitchellh/go-homedir v1.1.0
go: finding github.com/hashicorp/golang-lru v0.5.3
go: finding github.com/mitchellh/go-testing-interface v1.0.0
go: finding github.com/ulikunitz/xz v0.5.7
go: finding github.com/google/go-cmp v0.4.1
go: finding k8s.io/kube-openapi v0.0.0-20191107075043-30be4d16710a
go: finding github.com/jmespath/go-jmespath v0.3.0
go: finding github.com/docker/spdystream v0.0.0-20160310174837-449fdfce4d96
go: finding github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2
go: downloading golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
go: downloading github.com/evanphx/json-patch v4.5.0+incompatible
go: downloading github.com/pmezard/go-difflib v1.0.0
go: extracting github.com/evanphx/json-patch v4.5.0+incompatible
go: extracting github.com/pmezard/go-difflib v1.0.0
go: extracting golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
go: finding github.com/pmezard/go-difflib v1.0.0
go: finding golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
go: finding github.com/evanphx/json-patch v4.5.0+incompatible
ERROR: logging before flag.Parse: I0610 19:06:01.707389   11939 translate.go:106] Setting Language to en-US ...
--- FAIL: TestGenerateDocs (0.01s)
    --- FAIL: TestGenerateDocs/start (0.00s)
        generate-docs_test.go:47: Docs are not updated. Please run `make generate-docs` to update commands documentation:   strings.Join({
              	... // 2963 identical bytes
              	"          Used to specify the driver to run Kubernetes in. The l",
              	"ist of available drivers depends on operating system.\n      --dr",
            - 	"iver-mounts string              Use native driver mounts. Suppor",
            - 	"ted drivers:\n                                          \t\t\t\t* Doc",
            - 	"ker: -v flag(bind mounts). Has no effect in the existing docker ",
            - 	"container. Additional options rw and Z supported, for example --",
            - 	"driver-mounts=\"/tmp:/tmp:rwZ\"\n      --dr",
              	"y-run                           dry-run mode. Validates configur",
              	"ation, but does not mutate system state\n      --embed-certs     ",
              	... // 7983 identical bytes
              }, "")
E0610 19:06:05.839761   11939 out.go:102] [unset errFile]: ! Not passing HTTP_PROXY=127.0.0.1:3128 to docker env.
E0610 19:06:05.841803   11939 out.go:102] [unset errFile]: ! Not passing HTTP_PROXY=localhost:3128 to docker env.
FAIL
coverage: 20.7% of statements
FAIL	k8s.io/minikube/cmd/minikube/cmd	4.224s
ok  	k8s.io/minikube/cmd/minikube/cmd/config	0.163s	coverage: 21.7% of statements
ok  	k8s.io/minikube/pkg/addons	0.075s	coverage: 56.9% of statements
ok  	k8s.io/minikube/pkg/drivers	0.013s	coverage: 19.6% of statements
ok  	k8s.io/minikube/pkg/drivers/hyperkit	0.003s	coverage: 77.3% of statements
ok  	k8s.io/minikube/pkg/drivers/kvm	0.023s	coverage: 2.3% of statements
ok  	k8s.io/minikube/pkg/minikube/bootstrapper	0.365s	coverage: 55.7% of statements
ok  	k8s.io/minikube/pkg/minikube/bootstrapper/bsutil	0.100s	coverage: 63.2% of statements
ok  	k8s.io/minikube/pkg/minikube/bootstrapper/bsutil/ktmpl	0.010s	coverage: 100.0% of statements
ok  	k8s.io/minikube/pkg/minikube/bootstrapper/images	0.018s	coverage: 88.9% of statements
ok  	k8s.io/minikube/pkg/minikube/cluster	0.069s	coverage: 16.9% of statements
ok  	k8s.io/minikube/pkg/minikube/command	0.046s	coverage: 4.3% of statements
ok  	k8s.io/minikube/pkg/minikube/config	0.167s	coverage: 67.3% of statements
ok  	k8s.io/minikube/pkg/minikube/cruntime	0.041s	coverage: 40.6% of statements
ok  	k8s.io/minikube/pkg/minikube/docker	0.021s	coverage: 20.8% of statements
ok  	k8s.io/minikube/pkg/minikube/driver	0.045s	coverage: 37.1% of statements
ok  	k8s.io/minikube/pkg/minikube/extract	0.008s	coverage: 58.8% of statements
ok  	k8s.io/minikube/pkg/minikube/image	0.021s	coverage: 3.0% of statements
ok  	k8s.io/minikube/pkg/minikube/kubeconfig	0.038s	coverage: 77.0% of statements
ok  	k8s.io/minikube/pkg/minikube/localpath	0.006s	coverage: 51.9% of statements
ok  	k8s.io/minikube/pkg/minikube/logs	0.044s	coverage: 1.3% of statements
127.0.0.1:41337
I0610 19:06:38.240837   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:38.244254   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:38.244364   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:38.244427   13570 start.go:162] duration metric: libmachine.API.Create for "" took 63.152µs
I0610 19:06:38.244436   13570 start.go:203] post-start starting for "mock-machine-0.60466029" (driver="mock")
I0610 19:06:38.244445   13570 start.go:206] post-start completed in 319ns
I0610 19:06:38.244769   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.60466029/config.json ...
I0610 19:06:38.244967   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.60466029/config.json: {Name:mkb6a5f4a32ecdc5d2be59d8876e3c127a2abd37 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:38.245123   13570 start.go:124] duration metric: createHost completed in 4.241527ms
I0610 19:06:38.245225   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:38.245620   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:38.245676   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:38.245725   13570 start.go:162] duration metric: libmachine.API.Create for "" took 48.808µs
I0610 19:06:38.245732   13570 start.go:203] post-start starting for "mock-machine-0.94050909" (driver="mock")
I0610 19:06:38.245737   13570 start.go:206] post-start completed in 335ns
I0610 19:06:38.245815   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.94050909/config.json ...
I0610 19:06:38.245875   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.94050909/config.json: {Name:mk4a8fe78f3023b1cec57d2f3cef3a07b007ade6 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:38.245980   13570 start.go:124] duration metric: createHost completed in 748.663µs
I0610 19:06:38.246007   13570 start.go:240] acquiring machines lock for mock-machine-0.94050909: {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:38.246049   13570 start.go:244] acquired machines lock for "mock-machine-0.94050909" in 33.736µs
I0610 19:06:38.246056   13570 start.go:88] Skipping create...Using existing machine configuration
I0610 19:06:38.246068   13570 fix.go:53] fixHost starting: mock-machine-0.94050909
I0610 19:06:38.246108   13570 fix.go:105] recreateIfNeeded on mock-machine-0.94050909: state=Running err=<nil>
W0610 19:06:38.246114   13570 fix.go:131] unexpected machine state, will restart: <nil>
W0610 19:06:38.246231   13570 out.go:79] [unset outFile]: * Updating the running mock "mock-machine-0.94050909" bare metal machine ...
I0610 19:06:38.246246   13570 fix.go:55] fixHost completed within 180.261µs
I0610 19:06:38.246252   13570 start.go:75] releasing machines lock for "mock-machine-0.94050909", held for 196.215µs
I0610 19:06:38.246320   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:38.246701   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:38.246758   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:38.246825   13570 start.go:162] duration metric: libmachine.API.Create for "" took 67.439µs
I0610 19:06:38.246839   13570 start.go:203] post-start starting for "mock-machine-0.66456005" (driver="mock")
I0610 19:06:38.246851   13570 start.go:206] post-start completed in 286ns
I0610 19:06:38.246940   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.66456005/config.json ...
I0610 19:06:38.247009   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.66456005/config.json: {Name:mk20613fc96a94958cbe3d8b21e552230d24c036 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:38.247113   13570 start.go:124] duration metric: createHost completed in 786.899µs
I0610 19:06:38.247143   13570 start.go:240] acquiring machines lock for mock-machine-0.66456005: {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:38.247194   13570 start.go:244] acquired machines lock for "mock-machine-0.66456005" in 34.522µs
I0610 19:06:38.247209   13570 start.go:88] Skipping create...Using existing machine configuration
I0610 19:06:38.247220   13570 fix.go:53] fixHost starting: mock-machine-0.66456005
I0610 19:06:38.247274   13570 fix.go:105] recreateIfNeeded on mock-machine-0.66456005: state=Error err=machine does not exist
I0610 19:06:38.247291   13570 fix.go:110] machineExists: false. err=machine does not exist
W0610 19:06:38.247390   13570 out.go:79] [unset outFile]: * mock "mock-machine-0.66456005" bare metal machine is missing, will recreate.
I0610 19:06:38.247410   13570 delete.go:123] DEMOLISHING mock-machine-0.66456005 ...
Stopping "mock-machine-0.66456005"...
Error getting machine state: machine does not exist
Machine "mock-machine-0.66456005" was stopped.
I0610 19:06:38.247513   13570 stop.go:64] duration metric: stop complete within 91.033µs
W0610 19:06:38.247642   13570 out.go:79] [unset outFile]: * Deleting "mock-machine-0.66456005" in mock ...
W0610 19:06:38.247687   13570 delete.go:138] delete failed (probably ok) <nil>
I0610 19:06:38.247700   13570 fix.go:117] Sleeping 1 second for extra luck!
I0610 19:06:39.247874   13570 start.go:121] createHost starting for "mock-machine-0.66456005" (driver="mock")
W0610 19:06:39.248488   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.248606   13570 start.go:157] libmachine.API.Create for "mock-machine-0.66456005" (driver="mock")
I0610 19:06:39.248675   13570 start.go:162] duration metric: libmachine.API.Create for "mock-machine-0.66456005" took 66.606µs
I0610 19:06:39.248684   13570 start.go:203] post-start starting for "mock-machine-0.43771419" (driver="mock")
I0610 19:06:39.248689   13570 start.go:206] post-start completed in 232ns
I0610 19:06:39.248833   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.66456005/config.json ...
I0610 19:06:39.249122   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.43771419/config.json ...
I0610 19:06:39.249179   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.43771419/config.json: {Name:mkb43d6ffda9d3ef9c3b76f94a7be4e91e426d2d Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.249319   13570 start.go:124] duration metric: createHost completed in 1.413673ms
W0610 19:06:39.249348   13570 fix.go:131] unexpected machine state, will restart: <nil>
I0610 19:06:39.249359   13570 fix.go:55] fixHost completed within 1.002139888s
I0610 19:06:39.249365   13570 start.go:75] releasing machines lock for "mock-machine-0.66456005", held for 1.002157071s
I0610 19:06:39.249390   13570 start.go:240] acquiring machines lock for mock-machine-0.43771419-mock-machine-0.43771419: {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:39.249430   13570 start.go:244] acquired machines lock for "mock-machine-0.43771419-mock-machine-0.43771419" in 31.662µs
I0610 19:06:39.249438   13570 start.go:84] Provisioning new machine with config: &{Name:mock-machine-0.43771419 KeepContext:false EmbedCerts:false MinikubeISO: KicBaseImage: Memory:0 CPUs:0 DiskSize:0 Driver:mock HyperkitVpnKitSock: HyperkitVSockPorts:[] DockerEnv:[MOCK_MAKE_IT_PROVISION=true] InsecureRegistry:[] RegistryMirror:[] HostOnlyCIDR: HypervVirtualSwitch: HypervUseExternalSwitch:false HypervExternalAdapter: KVMNetwork: KVMQemuURI: KVMGPU:false KVMHidden:false DockerOpt:[] DisableDriverMounts:false NFSShare:[] NFSSharesRoot: UUID: NoVTXCheck:false DNSProxy:false HostDNSResolver:false HostOnlyNicType: NatNicType: KubernetesConfig:{KubernetesVersion: ClusterName: APIServerName: APIServerNames:[] APIServerIPs:[] DNSDomain: ContainerRuntime: CRISocket: NetworkPlugin:cni FeatureGates: ServiceCIDR: ImageRepository: LoadBalancerStartIP: LoadBalancerEndIP: ExtraOptions:[{Component:kubeadm Key:pod-network-cidr Value:10.244.0.0/16}] ShouldLoadCachedImages:false EnableDefaultCNI:false NodeIP: NodePort:0 NodeName:} Nodes:[{Name:minikube IP:127.0.0.1 Port:0 KubernetesVersion: ControlPlane:false Worker:false} {Name:mock-machine-0.66456005 IP:127.0.0.1 Port:0 KubernetesVersion: ControlPlane:false Worker:false}] Addons:map[] VerifyComponents:map[] DriverMounts:} &{Name:mock-machine-0.43771419 IP:127.0.0.1 Port:0 KubernetesVersion: ControlPlane:false Worker:false}
I0610 19:06:39.249501   13570 start.go:121] createHost starting for "mock-machine-0.43771419" (driver="mock")
W0610 19:06:39.249977   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.250055   13570 start.go:157] libmachine.API.Create for "mock-machine-0.43771419" (driver="mock")
I0610 19:06:39.250121   13570 start.go:162] duration metric: libmachine.API.Create for "mock-machine-0.43771419" took 65.798µs
I0610 19:06:39.250129   13570 start.go:203] post-start starting for "mock-machine-0.42463750" (driver="mock")
I0610 19:06:39.250134   13570 start.go:206] post-start completed in 244ns
I0610 19:06:39.250241   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.42463750/config.json ...
I0610 19:06:39.250318   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.42463750/config.json: {Name:mkcde37bedf023c89790dc35553d9ff514d13de6 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.250433   13570 start.go:124] duration metric: createHost completed in 924.808µs
I0610 19:06:39.250439   13570 start.go:75] releasing machines lock for "mock-machine-0.43771419-mock-machine-0.43771419", held for 1.002734ms
I0610 19:06:39.250514   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.251111   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.251233   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.251356   13570 start.go:162] duration metric: libmachine.API.Create for "" took 123.899µs
I0610 19:06:39.251374   13570 start.go:203] post-start starting for "mock-machine-0.68682307" (driver="mock")
I0610 19:06:39.251386   13570 start.go:206] post-start completed in 257ns
I0610 19:06:39.251507   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.68682307/config.json ...
I0610 19:06:39.251611   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.68682307/config.json: {Name:mkd81152c8c3b529b14fdda6a363772c5888345b Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.251786   13570 start.go:124] duration metric: createHost completed in 1.266126ms
I0610 19:06:39.251818   13570 start.go:240] acquiring machines lock for mock-machine-0.68682307: {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:39.251891   13570 start.go:244] acquired machines lock for "mock-machine-0.68682307" in 33.213µs
I0610 19:06:39.251928   13570 start.go:88] Skipping create...Using existing machine configuration
I0610 19:06:39.251946   13570 fix.go:53] fixHost starting: mock-machine-0.68682307
I0610 19:06:39.252016   13570 fix.go:105] recreateIfNeeded on mock-machine-0.68682307: state=Stopped err=<nil>
W0610 19:06:39.252038   13570 fix.go:131] unexpected machine state, will restart: <nil>
W0610 19:06:39.252220   13570 out.go:79] [unset outFile]: * Restarting existing mock bare metal machine for "mock-machine-0.68682307" ...
I0610 19:06:39.252371   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.68682307/config.json ...
I0610 19:06:39.252660   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.68682307/config.json ...
I0610 19:06:39.253528   13570 fix.go:55] fixHost completed within 1.583047ms
I0610 19:06:39.253546   13570 start.go:75] releasing machines lock for "mock-machine-0.68682307", held for 1.641081ms
I0610 19:06:39.253685   13570 start.go:240] acquiring machines lock for : {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:39.253754   13570 start.go:244] acquired machines lock for "" in 52.552µs
I0610 19:06:39.253765   13570 start.go:84] Provisioning new machine with config: &{Name: KeepContext:false EmbedCerts:false MinikubeISO: KicBaseImage: Memory:0 CPUs:0 DiskSize:0 Driver:mock HyperkitVpnKitSock: HyperkitVSockPorts:[] DockerEnv:[MOCK_MAKE_IT_PROVISION=true] InsecureRegistry:[] RegistryMirror:[] HostOnlyCIDR: HypervVirtualSwitch: HypervUseExternalSwitch:false HypervExternalAdapter: KVMNetwork: KVMQemuURI: KVMGPU:false KVMHidden:false DockerOpt:[] DisableDriverMounts:false NFSShare:[] NFSSharesRoot: UUID: NoVTXCheck:false DNSProxy:false HostDNSResolver:false HostOnlyNicType: NatNicType: KubernetesConfig:{KubernetesVersion: ClusterName: APIServerName: APIServerNames:[] APIServerIPs:[] DNSDomain: ContainerRuntime: CRISocket: NetworkPlugin: FeatureGates: ServiceCIDR: ImageRepository: LoadBalancerStartIP: LoadBalancerEndIP: ExtraOptions:[] ShouldLoadCachedImages:false EnableDefaultCNI:false NodeIP: NodePort:0 NodeName:} Nodes:[{Name:minikube IP:127.0.0.1 Port:0 KubernetesVersion: ControlPlane:false Worker:false}] Addons:map[] VerifyComponents:map[] DriverMounts:} &{Name:minikube IP: Port:0 KubernetesVersion: ControlPlane:false Worker:false}
I0610 19:06:39.253817   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.254202   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.254292   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.254376   13570 start.go:162] duration metric: libmachine.API.Create for "" took 84.288µs
I0610 19:06:39.254411   13570 start.go:203] post-start starting for "mock-machine-0.06563702" (driver="mock")
I0610 19:06:39.254422   13570 start.go:206] post-start completed in 285ns
I0610 19:06:39.254528   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.06563702/config.json ...
I0610 19:06:39.254633   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.06563702/config.json: {Name:mkf0058276f4eba6acab527887d57b86e9de0f23 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.254811   13570 start.go:124] duration metric: createHost completed in 987.487µs
I0610 19:06:39.254833   13570 start.go:75] releasing machines lock for "", held for 1.06911ms
I0610 19:06:39.254943   13570 start.go:240] acquiring machines lock for -minikube: {Name:mkb6c2cfc550326102292d5b2cd5c3f07d8f3219 Clock:{} Delay:500ms Timeout:15m0s Cancel:<nil>}
I0610 19:06:39.255025   13570 start.go:244] acquired machines lock for "-minikube" in 39.108µs
I0610 19:06:39.255038   13570 start.go:84] Provisioning new machine with config: &{Name: KeepContext:false EmbedCerts:false MinikubeISO: KicBaseImage: Memory:0 CPUs:0 DiskSize:0 Driver:mock HyperkitVpnKitSock: HyperkitVSockPorts:[] DockerEnv:[FOO=BAR] InsecureRegistry:[] RegistryMirror:[] HostOnlyCIDR: HypervVirtualSwitch: HypervUseExternalSwitch:false HypervExternalAdapter: KVMNetwork: KVMQemuURI: KVMGPU:false KVMHidden:false DockerOpt:[param=value] DisableDriverMounts:false NFSShare:[] NFSSharesRoot: UUID: NoVTXCheck:false DNSProxy:false HostDNSResolver:false HostOnlyNicType: NatNicType: KubernetesConfig:{KubernetesVersion: ClusterName: APIServerName: APIServerNames:[] APIServerIPs:[] DNSDomain: ContainerRuntime: CRISocket: NetworkPlugin: FeatureGates: ServiceCIDR: ImageRepository: LoadBalancerStartIP: LoadBalancerEndIP: ExtraOptions:[] ShouldLoadCachedImages:false EnableDefaultCNI:false NodeIP: NodePort:0 NodeName:} Nodes:[] Addons:map[] VerifyComponents:map[] DriverMounts:} &{Name:minikube IP: Port:0 KubernetesVersion: ControlPlane:false Worker:false}
I0610 19:06:39.255119   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.255589   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.255692   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.255763   13570 start.go:162] duration metric: libmachine.API.Create for "" took 81.792µs
I0610 19:06:39.255790   13570 start.go:203] post-start starting for "mock-machine-0.15651925" (driver="mock")
I0610 19:06:39.255807   13570 start.go:206] post-start completed in 236ns
I0610 19:06:39.255900   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.15651925/config.json ...
I0610 19:06:39.255976   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.15651925/config.json: {Name:mk11f39146f70358d021af8fc9aa7f538ebb5fd6 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.256113   13570 start.go:124] duration metric: createHost completed in 980.803µs
I0610 19:06:39.256135   13570 start.go:75] releasing machines lock for "-minikube", held for 1.097157ms
I0610 19:06:39.256213   13570 stop.go:36] StopHost: mock-machine-0.15651925
I0610 19:06:39.256285   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.256729   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.256816   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.256888   13570 start.go:162] duration metric: libmachine.API.Create for "" took 73.248µs
I0610 19:06:39.256917   13570 start.go:203] post-start starting for "mock-machine-0.09696952" (driver="mock")
I0610 19:06:39.256935   13570 start.go:206] post-start completed in 266ns
I0610 19:06:39.257024   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.09696952/config.json ...
I0610 19:06:39.257113   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.09696952/config.json: {Name:mke2dea9f4775780cff783bd59ddc50c01710afd Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.257250   13570 start.go:124] duration metric: createHost completed in 953.201µs
I0610 19:06:39.257271   13570 stop.go:36] StopHost: mock-machine-0.09696952
W0610 19:06:39.257419   13570 out.go:79] [unset outFile]: * Stopping "mock-machine-0.09696952" in mock ...
Stopping "mock-machine-0.09696952"...
Machine "mock-machine-0.09696952" was stopped.
I0610 19:06:39.257499   13570 stop.go:64] duration metric: stop complete within 58.596µs
I0610 19:06:39.257577   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.257955   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.258018   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.258119   13570 start.go:162] duration metric: libmachine.API.Create for "" took 101.036µs
I0610 19:06:39.258135   13570 start.go:203] post-start starting for "mock-machine-0.30091186" (driver="mock")
I0610 19:06:39.258146   13570 start.go:206] post-start completed in 195ns
I0610 19:06:39.258236   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.30091186/config.json ...
I0610 19:06:39.258307   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.30091186/config.json: {Name:mkadb3d2e08f13d14c52a53d6bb7942a6a82b0b9 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.258432   13570 start.go:124] duration metric: createHost completed in 822.442µs
W0610 19:06:39.258604   13570 out.go:79] [unset outFile]: * Deleting "mock-machine-0.30091186" in mock ...
I0610 19:06:39.258669   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.259051   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.259117   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.259196   13570 start.go:162] duration metric: libmachine.API.Create for "" took 78.769µs
I0610 19:06:39.259211   13570 start.go:203] post-start starting for "mock-machine-0.51521263" (driver="mock")
I0610 19:06:39.259221   13570 start.go:206] post-start completed in 186ns
I0610 19:06:39.259312   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.51521263/config.json ...
I0610 19:06:39.259390   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.51521263/config.json: {Name:mk420d03b8ff3db617497d4169828e17206eb87b Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.259522   13570 start.go:124] duration metric: createHost completed in 840.213µs
I0610 19:06:39.259592   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.259932   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.260009   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.260072   13570 start.go:162] duration metric: libmachine.API.Create for "" took 62.26µs
I0610 19:06:39.260101   13570 start.go:203] post-start starting for "mock-machine-0.81363996" (driver="mock")
I0610 19:06:39.260120   13570 start.go:206] post-start completed in 181ns
I0610 19:06:39.260210   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.81363996/config.json ...
I0610 19:06:39.260276   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.81363996/config.json: {Name:mk31f16f707b0f5a323371279cfadc06caa57b66 Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.260400   13570 start.go:124] duration metric: createHost completed in 795.026µs
I0610 19:06:39.260469   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.260819   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.260881   13570 start.go:157] libmachine.API.Create for "" (driver="mock")
I0610 19:06:39.260965   13570 start.go:162] duration metric: libmachine.API.Create for "" took 84.434µs
I0610 19:06:39.260981   13570 start.go:203] post-start starting for "mock-machine-0.21426387" (driver="mock")
I0610 19:06:39.260993   13570 start.go:206] post-start completed in 191ns
I0610 19:06:39.261085   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.21426387/config.json ...
I0610 19:06:39.261149   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.21426387/config.json: {Name:mk3f75733b8e08945fdbdc641c8e9b9b0da3023e Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.261285   13570 start.go:124] duration metric: createHost completed in 803.819µs
I0610 19:06:39.261365   13570 start.go:121] createHost starting for "minikube" (driver="mock")
W0610 19:06:39.261708   13570 out.go:79] [unset outFile]: * Running on localhost (CPUs=2, Memory=7976MB, Disk=69422MB) ...
I0610 19:06:39.261774   13570 start.go:157] libmachine.API.Create for "mock-machine-0.21426387" (driver="mock")
I0610 19:06:39.261859   13570 start.go:162] duration metric: libmachine.API.Create for "mock-machine-0.21426387" took 85.476µs
I0610 19:06:39.261895   13570 start.go:203] post-start starting for "mock-machine-0.38065719" (driver="mock")
I0610 19:06:39.261916   13570 start.go:206] post-start completed in 198ns
I0610 19:06:39.262002   13570 profile.go:156] Saving config to /tmp/minipath567898072/.minikube/profiles/mock-machine-0.38065719/config.json ...
I0610 19:06:39.262070   13570 lock.go:35] WriteFile acquiring /tmp/minipath567898072/.minikube/profiles/mock-machine-0.38065719/config.json: {Name:mk79c6529f5a2595413ebf08ab7f933f3bf0d43a Clock:{} Delay:500ms Timeout:1m0s Cancel:<nil>}
I0610 19:06:39.262198   13570 start.go:124] duration metric: createHost completed in 807.009µs
I0610 19:06:39.262246   13570 stop.go:36] StopHost: mock-machine-0.38065719
W0610 19:06:39.262389   13570 out.go:79] [unset outFile]: * Stopping "mock-machine-0.38065719" in mock ...
Stopping "mock-machine-0.38065719"...
Machine "mock-machine-0.38065719" was stopped.
I0610 19:06:39.262471   13570 stop.go:64] duration metric: stop complete within 60.664µs
I0610 19:06:39.387802   13570 host.go:65] Checking if "mock-machine-0.38065719" exists ...
Using SSH client type: native
&{{{<nil> 0 [] [] []} root [] 0xb82090 <nil>  [] 0s} localhost 39575 <nil> <nil>}
panic: Fail in goroutine after TestCreateSSHShell has completed

goroutine 47 [running]:
testing.(*common).Fail(0xc00031ab00)
	/home/travis/.gimme/versions/go1.13.8.linux.amd64/src/testing/testing.go:609 +0x151
testing.(*common).Errorf(0xc00031ab00, 0x143da7b, 0x16, 0xc000027ef0, 0x1, 0x1)
	/home/travis/.gimme/versions/go1.13.8.linux.amd64/src/testing/testing.go:704 +0x90
k8s.io/minikube/pkg/minikube/tests.(*SSHServer).handleRequest(0xc00042ea20, 0x179ffa0, 0xc0001915c0, 0xc0001038c0, 0xc0008b0060)
	/home/travis/gopath/src/github.com/kubernetes/minikube/pkg/minikube/tests/ssh_mock.go:171 +0x694
k8s.io/minikube/pkg/minikube/tests.(*SSHServer).handleIncomingConnection(0xc00042ea20, 0x17a5b20, 0xc000010060)
	/home/travis/gopath/src/github.com/kubernetes/minikube/pkg/minikube/tests/ssh_mock.go:128 +0x1bd
created by k8s.io/minikube/pkg/minikube/tests.(*SSHServer).serve
	/home/travis/gopath/src/github.com/kubernetes/minikube/pkg/minikube/tests/ssh_mock.go:96 +0x86
FAIL	k8s.io/minikube/pkg/minikube/machine	1.199s
ok  	k8s.io/minikube/pkg/minikube/notify	0.013s	coverage: 92.9% of statements
ok  	k8s.io/minikube/pkg/minikube/out	0.059s	coverage: 67.4% of statements
ok  	k8s.io/minikube/pkg/minikube/perf	4.268s	coverage: 33.8% of statements
ok  	k8s.io/minikube/pkg/minikube/problem	0.011s	coverage: 91.7% of statements
ok  	k8s.io/minikube/pkg/minikube/proxy	0.007s	coverage: 77.0% of statements
ok  	k8s.io/minikube/pkg/minikube/registry	0.008s	coverage: 75.5% of statements
ok  	k8s.io/minikube/pkg/minikube/service	0.076s	coverage: 84.2% of statements
ok  	k8s.io/minikube/pkg/minikube/shell	0.003s	coverage: 96.9% of statements
ok  	k8s.io/minikube/pkg/minikube/storageclass	0.026s	coverage: 100.0% of statements
ok  	k8s.io/minikube/pkg/minikube/sysinit	0.020s	coverage: 6.5% of statements
ok  	k8s.io/minikube/pkg/minikube/translate	0.011s	coverage: 10.5% of statements
ok  	k8s.io/minikube/pkg/minikube/tunnel	1.703s	coverage: 64.2% of statements
ok  	k8s.io/minikube/pkg/util	1.217s	coverage: 77.9% of statements
ok  	k8s.io/minikube/pkg/util/lock	0.016s	coverage: 18.2% of statements
ok  	k8s.io/minikube/pkg/util/retry	0.011s	coverage: 0.0% of statements
FAIL
Makefile:273: recipe for target 'test' failed
make: *** [test] Error 32
TravisBuddy Request Identifier: 9f7507e0-ab4d-11ea-b056-2f6ef3b381c7

@codecov-commenter
Copy link

codecov-commenter commented Jun 10, 2020

Codecov Report

Merging #8136 into master will decrease coverage by 1.19%.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #8136      +/-   ##
==========================================
- Coverage   35.27%   34.08%   -1.20%     
==========================================
  Files         146      153       +7     
  Lines        9326     9844     +518     
==========================================
+ Hits         3290     3355      +65     
- Misses       5637     6086     +449     
- Partials      399      403       +4     
Impacted Files Coverage Δ
cmd/minikube/cmd/start_flags.go 51.76% <100.00%> (+0.79%) ⬆️
pkg/minikube/bootstrapper/certs.go 44.26% <0.00%> (-27.05%) ⬇️
pkg/minikube/proxy/proxy.go 77.10% <0.00%> (-19.87%) ⬇️
pkg/minikube/perf/start.go 13.15% <0.00%> (-16.85%) ⬇️
cmd/minikube/cmd/docker-env.go 41.59% <0.00%> (-7.89%) ⬇️
cmd/minikube/cmd/node_delete.go 13.33% <0.00%> (-4.85%) ⬇️
cmd/minikube/cmd/start.go 13.47% <0.00%> (-1.93%) ⬇️
pkg/minikube/driver/driver.go 58.87% <0.00%> (-1.13%) ⬇️
cmd/minikube/cmd/status.go 22.22% <0.00%> (-0.98%) ⬇️
cmd/minikube/cmd/node_stop.go 13.33% <0.00%> (-0.96%) ⬇️
... and 24 more

@g9rga g9rga changed the title Feature request #7604: use native docker bind mounts with mount-string option Feature request #7604: use native docker bind mounts with driver-mounts option Jun 10, 2020
@sharifelgamal
Copy link
Collaborator

@g9rga Could you sign the CLA so we can proceed with testing?

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Jun 17, 2020
@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jul 7, 2020
@minikube-pr-bot
Copy link

kvm2 Driver
Times for minikube: [62.571789377 64.79958020900001 59.359381514999995]
Average time for minikube: 62.24358370033334

Times for Minikube (PR 8136): [63.57378907499999 63.03435616099999 62.82572350499999]
Average time for Minikube (PR 8136): 63.144622913666666

Averages Time Per Log

+--------------------------------+-----------+--------------------+
|              LOG               | MINIKUBE  | MINIKUBE (PR 8136) |
+--------------------------------+-----------+--------------------+
| * minikube v1.12.0 on Debian   |  0.052522 |                    |
|                           9.11 |           |                    |
| * Using the kvm2 driver based  |  0.017509 |           0.017025 |
| on existing profile            |           |                    |
| * Starting control plane node  |  0.003182 |           0.003254 |
| minikube in cluster minikube   |           |                    |
| * Creating kvm2 VM (CPUs=2,    | 39.223906 |          40.829770 |
| Memory=3700MB, Disk=20000MB)   |           |                    |
| ...                            |           |                    |
| * Preparing Kubernetes v1.18.3 | 20.933864 |                    |
| on Docker 19.03.12 ...         |           |                    |
| * Verifying Kubernetes         |  1.334133 |           1.310643 |
| components...                  |           |                    |
| * Enabled addons:              |  0.589222 |           0.134267 |
| default-storageclass,          |           |                    |
| storage-provisioner            |           |                    |
| * Done! kubectl is now         |  0.085577 |           0.070843 |
| configured to use "minikube"   |           |                    |
|                                |  0.003670 |           0.003381 |
+--------------------------------+-----------+--------------------+

docker Driver
Times for minikube: [28.886010600000002 32.816672604 27.212248371]
Average time for minikube: 29.638310525000005

Times for Minikube (PR 8136): [26.094641151 26.080890553 27.602857422000003]
Average time for Minikube (PR 8136): 26.592796375333332

Averages Time Per Log

+--------------------------------+-----------+--------------------+
|              LOG               | MINIKUBE  | MINIKUBE (PR 8136) |
+--------------------------------+-----------+--------------------+
| * minikube v1.12.0 on Debian   |  0.063889 |                    |
|                           9.11 |           |                    |
| * Using the docker driver      |  0.002674 |           0.002508 |
| based on existing profile      |           |                    |
| * Starting control plane node  |  0.055264 |           0.057515 |
| minikube in cluster minikube   |           |                    |
| * Creating docker container    |  7.702835 |           7.355694 |
| (CPUs=2, Memory=3700MB) ...    |           |                    |
| * Preparing Kubernetes v1.18.3 | 20.468641 |          17.961919 |
| on Docker 19.03.2 ...          |           |                    |
| * Verifying Kubernetes         |  1.199134 |           1.063530 |
| components...                  |           |                    |
| * Enabled addons:              |  0.080304 |           0.018148 |
| default-storageclass,          |           |                    |
| storage-provisioner            |           |                    |
| * Done! kubectl is now         |  0.060376 |           0.063761 |
| configured to use "minikube"   |           |                    |
|                                |  0.005193 |           0.065322 |
+--------------------------------+-----------+--------------------+

@sharifelgamal
Copy link
Collaborator

@g9rga Can you fix the outstanding merge conflict? That way we can rerun the tests and make sure everything is ok.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 15, 2020
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jul 20, 2020
@g9rga
Copy link
Author

g9rga commented Jul 21, 2020

@g9rga Can you fix the outstanding merge conflict? That way we can rerun the tests and make sure everything is ok.

@sharifelgamal It fixed. Could you rerun tests?

@@ -592,3 +592,38 @@ func iptablesFileExists(ociBin string, nameOrID string) bool {
}
return true
}

func CreateMounts(mountString string) []Mount {
Copy link
Member

@medyagh medyagh Jul 22, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add comment for exported funcs

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Already added! 👍

Copy link
Member

@medyagh medyagh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@g9rga thank you for your patience with moving this PR, see comments plz

cmd/minikube/cmd/start_flags.go Show resolved Hide resolved
@medyagh
Copy link
Member

medyagh commented Jul 29, 2020

@g9rga do you mind trying this PR and see if it works ? and put the output in the PR description ? I did a validation and it didn't seem to be working (if i put a file in the mounted folder I didn't see it in the host)

@g9rga
Copy link
Author

g9rga commented Jul 30, 2020

@g9rga do you mind trying this PR and see if it works ? and put the output in the PR description ? I did a validation and it didn't seem to be working (if i put a file in the mounted folder I didn't see it in the host)

Did you try it with existing container? Due to docker architecture, mounts only works for new containers(. I added example output in PR with screenshot. This fix I use for my own dev environment.

@g9rga g9rga force-pushed the fix-7604 branch 2 times, most recently from fbbc7e9 to b55f3ae Compare August 2, 2020 07:57
@g9rga g9rga requested a review from medyagh August 2, 2020 08:18
@mszygenda
Copy link

Would be great if it supported "delegated" / "cached" / "consistent" mount flags which greatly improves performance on MacOS systems.

https://docs.docker.com/docker-for-mac/osxfs-caching/

@wcjohnson
Copy link

Is there anything that I can do to help with this PR? This functionality is badly needed in the Docker driver. The minikube mount 9P file system is far too slow and unstable for anything more than trivial workloads.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 24, 2020
@ptramsey
Copy link

ptramsey commented Aug 24, 2020

Is there anything that I could do to help this along? I hate to just be sitting on the sidelines cheering! But I'd really love to see this landed. This is currently the only thing preventing us from switching to the docker vm-driver.

@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Aug 25, 2020
@wcjohnson
Copy link

@g9rga In order to make use of this PR, is it sufficient to just compile and replace the minikube binary?

@g9rga
Copy link
Author

g9rga commented Aug 30, 2020

@g9rga In order to make use of this PR, is it sufficient to just compile and replace the minikube binary?

Yep, you can compile it with make darwin/linux/windows and run compiled binary, for example in my case:
/home/minikube/out/minikube start --cpus=6 --kubernetes-version=v1.14.10 --driver=docker --memory=6G --driver-mounts="/home/g9rga/www:/home/g9rga/www:rw" --addons=ingress

@g9rga
Copy link
Author

g9rga commented Aug 30, 2020

I added integration test for new option

@tstromberg
Copy link
Contributor

tstromberg commented Sep 1, 2020

I believe this is obsoleted by #8159 - which does the same thing, but using the existing --mount-string. My apologies for the confusion: I didn't realize there were two PR's out for the same feature. Please /reopen or send a new PR for any of the missing functionality.

@tstromberg tstromberg closed this Sep 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.