Repository: kubernetes/minikube
Pull request #13080 (2021-12-03 20:51:19)

Accept "newest" as input for --kubernetes-version
Adds support for #13076

# Testing

```shell
 ./out/minikube start -p testin1 --kubernetes-version=newest
* [testin1] minikube v1.24.0 on Ubuntu 20.04
* Automatically selected the docker driver. Other choices: kvm2, virtualbox, none, ssh
* Starting control plane node testin1 in cluster testin1
* Pulling base image ...
* Downloading Kubernetes v1.23.0-beta.0 preload ...
    > preloaded-images-k8s-v14-v1...: 506.33 MiB / 506.33 MiB  100.00% 25.33 Mi
    > gcr.io/k8s-minikube/kicbase: 355.78 MiB / 355.78 MiB  100.00% 9.17 MiB p/
* Creating docker container (CPUs=2, Memory=16000MB) ...
* Preparing Kubernetes v1.23.0-beta.0 on Docker 20.10.8 ...
  - Generating certificates and keys ...
  - Booting up control plane ...
  - Configuring RBAC rules ...
* Verifying Kubernetes components...
  - Using image gcr.io/k8s-minikube/storage-provisioner:v5
* Enabled addons: default-storageclass, storage-provisioner
* Done! kubectl is now configured to use "testin1" cluster and "default" namespace by default
```



Patch:
diff --git a/.github/ISSUE_TEMPLATE/experimental.yaml b/.github/ISSUE_TEMPLATE/experimental.yaml
deleted file mode 100644
index 9ed1aff79..000000000
--- a/.github/ISSUE_TEMPLATE/experimental.yaml
+++ /dev/null
@@ -1,32 +0,0 @@
-name: Create a Bug (English)
-description: Report an issue in English
-body:
-  - type: markdown
-    id: problem
-    attributes:
-      label: What Happened?
-      description: |
-      Tip: Add the "--alsologtostderr" flag to the command-line for more logs
-    validations:
-      required: true
-  - type: markdown
-    id: logs
-    attributes:
-      label: Attach the log file
-      description: |
-      Tip: Run `minikube logs --file=log.txt` then drag & drop `log.txt` file to the browser. 
-    validations:
-      required: true
-  - type: dropdown
-    id: operating-system
-    attributes:
-      label: Operating System
-      description: What is your OS?
-      options:
-        - macOS (Default)
-        - Windows
-        - Ubuntu
-        - Redhat/Fedora
-        - Other
-    validations:
-      required: false
\ No newline at end of file
diff --git a/cmd/minikube/cmd/start.go b/cmd/minikube/cmd/start.go
index 00a126f7d..98c193163 100644
--- a/cmd/minikube/cmd/start.go
+++ b/cmd/minikube/cmd/start.go
@@ -1577,7 +1577,7 @@ $ minikube config unset kubernetes-version`)
 
 	if paramVersion == "" || strings.EqualFold(paramVersion, "stable") {
 		paramVersion = constants.DefaultKubernetesVersion
-	} else if strings.EqualFold(paramVersion, "latest") {
+	} else if strings.EqualFold(strings.ToLower(paramVersion), "latest") || strings.EqualFold(strings.ToLower(paramVersion), "newest") {
 		paramVersion = constants.NewestKubernetesVersion
 	}
 
diff --git a/hack/jenkins/setup_docker_desktop_windows.ps1 b/hack/jenkins/setup_docker_desktop_windows.ps1
index 75924b879..8b40410a9 100644
--- a/hack/jenkins/setup_docker_desktop_windows.ps1
+++ b/hack/jenkins/setup_docker_desktop_windows.ps1
@@ -12,10 +12,7 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-if (Get-Process "*Docker Desktop*") {
-  Write-Host "Docker is already running!"
-  exit 0
-}
+Get-Process "*Docker Desktop*" | Stop-Process
 
 $attempt = 1
 while($attempt -le 10) {


Test patch:
diff --git a/cmd/minikube/cmd/start_test.go b/cmd/minikube/cmd/start_test.go
index 3fdad97f7..54133d85e 100644
--- a/cmd/minikube/cmd/start_test.go
+++ b/cmd/minikube/cmd/start_test.go
@@ -73,6 +73,21 @@ func TestGetKubernetesVersion(t *testing.T) {
 			expectedVersion: constants.NewestKubernetesVersion,
 			paramVersion:    "latest",
 		},
+		{
+			description:     "kubernetes-version given as 'LATEST', no config",
+			expectedVersion: constants.NewestKubernetesVersion,
+			paramVersion:    "LATEST",
+		},
+		{
+			description:     "kubernetes-version given as 'newest', no config",
+			expectedVersion: constants.NewestKubernetesVersion,
+			paramVersion:    "newest",
+		},
+		{
+			description:     "kubernetes-version given as 'NEWEST', no config",
+			expectedVersion: constants.NewestKubernetesVersion,
+			paramVersion:    "NEWEST",
+		},
 	}
 
 	for _, test := range tests {