mirror of
https://github.com/truenas/charts.git
synced 2026-04-14 10:40:31 +08:00
Add method to render environment variables
This commit is contained in:
12
library/common/templates/lib/containers/_environment.tpl
Normal file
12
library/common/templates/lib/containers/_environment.tpl
Normal file
@@ -0,0 +1,12 @@
|
||||
{{/*
|
||||
Render environment variables
|
||||
*/}}
|
||||
{{- define "common.containers.environmentVariables" -}}
|
||||
{{- $values := . -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "environmentVariables")) -}}
|
||||
{{- range $envVariable := $values.environmentVariables -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "name" "value")) -}}
|
||||
- name: {{ $envVariable.name }}
|
||||
value: {{ $envVariable.value }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,7 +1,7 @@
|
||||
{{/*
|
||||
DNS Configuration
|
||||
*/}}
|
||||
{{- define "dnsConfiguration" }}
|
||||
{{- define "common.networking.dnsConfiguration" }}
|
||||
dnsPolicy: {{ .Values.dnsPolicy }}
|
||||
{{- if .Values.dnsConfig }}
|
||||
dnsConfig:
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{{/*
|
||||
Checks if a list of keys are present in a dictionary
|
||||
*/}}
|
||||
{{- define "common.validateKeys" -}}
|
||||
{{- define "common.schema.validateKeys" -}}
|
||||
{{- $values := . -}}
|
||||
{{- if and (hasKey $values "values") (hasKey $values "checkKeys") -}}
|
||||
{{- $missingKeys := list -}}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{{/*
|
||||
Retrieve host path from ix volumes based on dataset name
|
||||
*/}}
|
||||
{{- define "common.retrieveHostPathFromiXVolume" -}}
|
||||
{{- define "common.storage.retrieveHostPathFromiXVolume" -}}
|
||||
{{- range $index, $hostPathConfiguration := $.ixVolumes }}
|
||||
{{- $dsName := base $hostPathConfiguration.hostPath -}}
|
||||
{{- if eq $.datasetName $dsName -}}
|
||||
@@ -13,13 +13,13 @@ Retrieve host path from ix volumes based on dataset name
|
||||
{{/*
|
||||
Retrieve host path from ix volumes based on a key
|
||||
*/}}
|
||||
{{- define "common.configuredHostPath" -}}
|
||||
{{- define "common.storage.configuredHostPath" -}}
|
||||
{{- $values := . -}}
|
||||
{{- if $values.hostPathEnabled -}}
|
||||
{{- include "common.validateKeys" (dict "values" $values "checkKeys" (list "pathField")) -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "pathField")) -}}
|
||||
{{- $values.pathField -}}
|
||||
{{- else -}}
|
||||
{{- include "common.validateKeys" (dict "values" $values "checkKeys" (list "datasetName" "ixVolumes")) -}}
|
||||
{{- include "common.retrieveHostPathFromiXVolume" (dict "datasetName" $values.datasetName "ixVolumes" $values.ixVolumes) -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "datasetName" "ixVolumes")) -}}
|
||||
{{- include "common.storage.retrieveHostPathFromiXVolume" (dict "datasetName" $values.datasetName "ixVolumes" $values.ixVolumes) -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -11,15 +11,15 @@ This expects a dictionary in the following format:
|
||||
"datasetName": string,
|
||||
}
|
||||
*/}}
|
||||
{{- define "common.volumeConfig" -}}
|
||||
{{- define "common.storage.volumeConfig" -}}
|
||||
{{- $values := . -}}
|
||||
{{- include "common.validateKeys" (dict "values" $values "checkKeys" (list "name")) -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "name")) -}}
|
||||
- name: {{ $values.name }}
|
||||
{{- if $values.emptyDirVolumes -}}
|
||||
emptyDir: {}
|
||||
{{- else -}}
|
||||
hostPath:
|
||||
path: {{ template "common.configuredHostPath" $values }}
|
||||
path: {{ template "common.storage.configuredHostPath" $values }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -41,11 +41,11 @@ This expects a dictionary to be provided in the following format:
|
||||
] ( list of dicts )
|
||||
}
|
||||
*/}}
|
||||
{{- define "common.volumesConfiguration" -}}
|
||||
{{- define "common.storage.volumesConfiguration" -}}
|
||||
{{- $values := . -}}
|
||||
{{- include "common.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes" "volumes")) -}}
|
||||
{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes" "volumes")) -}}
|
||||
{{- range $vol := $values.volumes -}}
|
||||
{{- $_ := set $vol "ixVolumes" $values.ixVolumes -}}
|
||||
{{- include "common.volumeConfig" $vol -}}
|
||||
{{- include "common.storage.volumeConfig" $vol -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
Reference in New Issue
Block a user