Helm Template If/Else: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
=External=
=External=
* https://helm.sh/docs/chart_template_guide/#if-else  
* https://helm.sh/docs/chart_template_guide/control_structures/#if-else


=Internal=
=Internal=

Revision as of 21:28, 7 January 2020

External

Internal

Overview

if/else can be used to create conditional blocks.

The if control structures evaluate pipelines, not just values (values are a special case of a pipeline):

{{ if PIPELINE }}
  # Do something
{{ else if OTHER_PIPELINE }}
  # Do something else
{{ else }}
  # Default case
{{ end }}

A pipeline evaluates to false if the result of the pipeline, or the value, is:

  • a boolean false
  • a numeric zero
  • an empty string
  • a nil (empty or null)
  • an empty collection (map, slice, tuple, dict, array).

In any other case, the condition is evaluated to true.

Example:

{{ if .Values.debug }}
  # Do something
{{ else }}
  # Do something else
{{ end }}