diff --git a/storage/kubernetes/client.go b/storage/kubernetes/client.go
index bfdc915113c9315d248d34dc66de961e8221a807..e700a3f4271eb0f33fa4f8e19f1f0a5ec43ddc2d 100644
--- a/storage/kubernetes/client.go
+++ b/storage/kubernetes/client.go
@@ -348,7 +348,11 @@ func inClusterConfig() (cluster k8sapi.Cluster, user k8sapi.AuthInfo, namespace
 
 func currentContext(config *k8sapi.Config) (cluster k8sapi.Cluster, user k8sapi.AuthInfo, ns string, err error) {
 	if config.CurrentContext == "" {
-		return cluster, user, "", errors.New("kubeconfig has no current context")
+		if len(config.Contexts) == 1 {
+			config.CurrentContext = config.Contexts[0].Name
+		} else {
+			return cluster, user, "", errors.New("kubeconfig has no current context")
+		}
 	}
 	context, ok := func() (k8sapi.Context, bool) {
 		for _, namedContext := range config.Contexts {