kube-lib/helm-charts¶
API bindPort for Cluster (default 6443)
Install Helm Charts¶
Array of charts to install via Helm. The list will be followed in order.
Work is idempotent: No action is taken if charts are already installed.
Fields: chart and name are required.
Options exist to inject additional control flags into helm install instructions:
name
: name of the chart (required)chart
: reference of the chart (required) - may rely on repo, path or other helm install [chart] standardnamespace
: kubernetes namespace to use for chart (defaults to none)params
: map of parameters to include in the helm install (optional). Keys and values are converted to --[key] [value] in the install instruction.set
: array of values to set in the helm install (optional). values are converted to --set [value] in the install instruction.targz
(optional): provides a location for a tar.gz file containing charts to install. Path is relative.repos
(optional): adds the requested repos to helm usinghelm repo add
before installing helm. syntax is[repo name]: [repo path]
.sleep
(optional): time in seconds to wait after install (defaults to none)postkubectl
(optional): map of kubectl [request] commands to run after the helm install - stored using the map keyprekubectl
(optional): array of kubectl [request] commands to run before the helm installgit
(optional): array of urls for cloning repos into local path
NOT YET PORTED FROM KRIB
- wait: wait for name (and namespace if provided) to be running before next action
- templates (optional) map of DRP templates keyed to the desired names (must be uploaded!) to render before doing other work.
- templatesbefore (optional) expands the provided template files inline before the helm install happens.
- templatesafter (optional) expands the provided template files inline after the helm install happens
Example:
[
{
"chart": "stable/mysql",
"name": "mysql"
}, {
"chart": "openfaas/openfaas",
"name": "openfaas",
"namespace": "openfaas",
"git": [
"https://github.com/openfaas/faas-netes/"
],
"repos": {
"openfaas":"https://openfaas.github.io/faas-netes/"
},
"prekubectl": [
"apply -f ./faas-netes/namespaces.yml",
"apply -f ./faas-netes/yaml_amd64"
],
"postkubectl": {
"openfaas/password": "-n openfaas get secret basic-auth -o jsonpath=\"{.data.basic-auth-password}\" | base64 --decode"
},
"set": [
"functionNamespace=openfaas-fn",
"generateBasicAuth=true"
],
"sleep": 10
}
]