# kleinwuerfel


Opinionated command line tool to interact with [minikube](https://github.com/kubernetes/minikube). An easy way to deploy a given set of helm charts.
"kleinwuerfel" means more or less "minikube" in German.
[Installation](#installation) •
[Usage](#usage)
Installation
- cargo
bash
cargo install kleinwuerfel
- Precompiled binary
Usage
Config file
```toml
[minikube]
Amount of CPUs
cpus = 4
Memory in MB
memory = 8192
[[helmchartrepo]]
Name to be referenced in [[helmchart]] blocks
name = "helm-chart-repo-1"
URL for "helm repo add ..." and "helm login" when "username" and "password" are both set
url = "some.registry.url/chartrepo"
Optional
username = "${env.HARBOR_USERNAME}"
Optional
password = "${env.HARBOR_SECRET}"
Optional - will be piped to "helm upgrade ... -f "
values = """
imageRegistry:
username: '${env.HARBORUSERNAME}'
password: '${env.HARBORSECRET}'
"""
[[helmchart]]
Reference to name of [[helmchartrepo]] block
helmchartrepo = "helm-chart-repo-1"
Is combined for "helm upgrade ... helm-chart-1 helm-chart-repo-1/helm-chart-1"
name = "helm-chart-1"
[[helmchart]]
Reference to name of [[helmchartrepo]] block
helmchartrepo = "helm-chart-repo-1"
Is combined for "helm upgrade ... helm-chart-1 helm-chart-repo-1/helm-chart-2"
name = "helm-chart-2"
```
Start (start minikube and deploy helm charts)
- If
minikube status
exits with 0
, we assume that it is already running and skip the minikube start
part
bash
kleinwuerfel start
Cleanup
- Calls
minikube delete
right now
bash
kleinwuerfel cleanup
Ideas
- Port forwarding for individual helm charts
- Better error handling
- More testing