Skip preload if not running on amd64

Also make sure that preload is available before attempting to run preload.
pull/7044/head
Priya Wadhwa 2020-03-13 16:24:28 -07:00
parent 5986083ca0
commit 89c6c72adb
3 changed files with 11 additions and 1 deletions

View File

@ -119,6 +119,10 @@ func (d *Driver) Create() error {
return errors.Wrap(err, "prepare kic ssh")
}
// return now if no preload is available
if !download.PreloadExists(d.NodeConfig.KubernetesVersion, d.NodeConfig.ContainerRuntime) {
return nil
}
t := time.Now()
glog.Infof("Starting extracting preloaded images to volume")
// Extract preloaded images to container

View File

@ -24,6 +24,7 @@ import (
"net/http"
"os"
"path"
"runtime"
"cloud.google.com/go/storage"
"google.golang.org/api/option"
@ -78,6 +79,10 @@ func PreloadExists(k8sVersion, containerRuntime string) bool {
return false
}
if runtime.GOARCH != "amd64" {
return false
}
// Omit remote check if tarball exists locally
targetPath := TarballPath(k8sVersion)
if _, err := os.Stat(targetPath); err == nil {

View File

@ -37,6 +37,7 @@ import (
"k8s.io/minikube/pkg/minikube/config"
"k8s.io/minikube/pkg/minikube/constants"
"k8s.io/minikube/pkg/minikube/cruntime"
"k8s.io/minikube/pkg/minikube/download"
"k8s.io/minikube/pkg/minikube/driver"
"k8s.io/minikube/pkg/minikube/exit"
"k8s.io/minikube/pkg/minikube/kubeconfig"
@ -75,7 +76,7 @@ func configureRuntimes(runner cruntime.CommandRunner, drvName string, k8s config
}
// Preload is overly invasive for bare metal, and caching is not meaningful. KIC handled elsewhere.
if driver.IsVM(drvName) {
if driver.IsVM(drvName) && download.PreloadExists(k8s.KubernetesVersion, k8s.ContainerRuntime) {
if err := cr.Preload(k8s); err != nil {
switch err.(type) {
case *cruntime.ErrISOFeature: