Open
Description
What Happened?
Description
When running minikube image rm
, the exit code is 0 even though the command fails to remove the image. A failure should result in a non-zero exit code, allowing scripts or CI processes to handle the failure properly.
Steps to reproduce
- Load an image and start a pod.
minikube image load alpine:latest
kubectl create deployment alpine-deployment --image=alpine:latest -- sleep 3600
- Attempt to remove the image while being in use.
minikube image rm alpine:latest
- Check for the error output: You should see an error similar to:
❗ Failed to remove images for profile minikube error removing images: remove image docker: docker rmi alpine:latest: Process exited with status 1
stdout:
stderr:
Error response from daemon: conflict: unable to remove repository reference "alpine:latest" (must force) - container dc9b6c3f872e is using its referenced image 91ef0af61f39
- Check the exit code of the minikube command:
echo $?
# Output: 0
Expected Behavior
When minikube image rm
encounters an error (such as an image being in use), it should exit with a non-zero status code (e.g. 1), allowing proper error handling in scripts or pipelines.
Actual Behavior
The command exits with a status code of 0, even though it reports an internal failure, which leads to downstream commands executing when they shouldn't.
Suggested Fix
Ensure that minikube image rm
propagates the exit status of the underlying image removal process.\
Environment
- Minikube Version: v1.33.1
- OS: Ubuntu via WSL2 (5.15.153.1-microsoft-standard-WSL2)
Attach the log file
Operating System
Ubuntu
Driver
Docker