From 6caa5db0c2251f957048373780f413bce6da405b Mon Sep 17 00:00:00 2001 From: Priya Wadhwa Date: Mon, 9 Mar 2020 11:51:37 -0700 Subject: [PATCH 1/2] fix bug for windows file separators --- pkg/minikube/cruntime/docker.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkg/minikube/cruntime/docker.go b/pkg/minikube/cruntime/docker.go index 3b98bb51e764..0c08a41254ab 100644 --- a/pkg/minikube/cruntime/docker.go +++ b/pkg/minikube/cruntime/docker.go @@ -19,7 +19,6 @@ package cruntime import ( "fmt" "os/exec" - "path/filepath" "strings" "time" @@ -272,7 +271,11 @@ func (r *Docker) SystemLogCmd(len int) string { // 3. Remove the tarball within the VM func (r *Docker) Preload(k8sVersion string) error { tarballPath := download.TarballPath(k8sVersion) - dest := "/preloaded.tar.lz4" + targetDir := "/" + targetName := "preloaded.tar.lz4" + // don't use filepath.Join so that we maintain Linux file separators + // so that this still works on Windows + dest := targetDir + targetName c := exec.Command("which", "lz4") if _, err := r.Runner.RunCmd(c); err != nil { @@ -280,7 +283,7 @@ func (r *Docker) Preload(k8sVersion string) error { } // Copy over tarball into host - fa, err := assets.NewFileAsset(tarballPath, filepath.Dir(dest), filepath.Base(dest), "0644") + fa, err := assets.NewFileAsset(tarballPath, targetDir, targetName, "0644") if err != nil { return errors.Wrap(err, "getting file asset") } From eb815a7b9b0892aba61683db41a63cd3ab6233ac Mon Sep 17 00:00:00 2001 From: Priya Wadhwa Date: Mon, 9 Mar 2020 12:52:58 -0700 Subject: [PATCH 2/2] use path.join --- pkg/minikube/cruntime/docker.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkg/minikube/cruntime/docker.go b/pkg/minikube/cruntime/docker.go index 0c08a41254ab..c27d7e84ea36 100644 --- a/pkg/minikube/cruntime/docker.go +++ b/pkg/minikube/cruntime/docker.go @@ -19,6 +19,7 @@ package cruntime import ( "fmt" "os/exec" + "path" "strings" "time" @@ -273,9 +274,7 @@ func (r *Docker) Preload(k8sVersion string) error { tarballPath := download.TarballPath(k8sVersion) targetDir := "/" targetName := "preloaded.tar.lz4" - // don't use filepath.Join so that we maintain Linux file separators - // so that this still works on Windows - dest := targetDir + targetName + dest := path.Join(targetDir, targetName) c := exec.Command("which", "lz4") if _, err := r.Runner.RunCmd(c); err != nil {