github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/kafka/charts/common/templates/validations/_mongodb.tpl (about)

     1  {{/* vim: set filetype=mustache: */}}
     2  {{/*
     3  Validate MongoDB® required passwords are not empty.
     4  
     5  Usage:
     6  {{ include "common.validations.values.mongodb.passwords" (dict "secret" "secretName" "subchart" false "context" $) }}
     7  Params:
     8    - secret - String - Required. Name of the secret where MongoDB® values are stored, e.g: "mongodb-passwords-secret"
     9    - subchart - Boolean - Optional. Whether MongoDB® is used as subchart or not. Default: false
    10  */}}
    11  {{- define "common.validations.values.mongodb.passwords" -}}
    12    {{- $existingSecret := include "common.mongodb.values.auth.existingSecret" . -}}
    13    {{- $enabled := include "common.mongodb.values.enabled" . -}}
    14    {{- $authPrefix := include "common.mongodb.values.key.auth" . -}}
    15    {{- $architecture := include "common.mongodb.values.architecture" . -}}
    16    {{- $valueKeyRootPassword := printf "%s.rootPassword" $authPrefix -}}
    17    {{- $valueKeyUsername := printf "%s.username" $authPrefix -}}
    18    {{- $valueKeyDatabase := printf "%s.database" $authPrefix -}}
    19    {{- $valueKeyPassword := printf "%s.password" $authPrefix -}}
    20    {{- $valueKeyReplicaSetKey := printf "%s.replicaSetKey" $authPrefix -}}
    21    {{- $valueKeyAuthEnabled := printf "%s.enabled" $authPrefix -}}
    22  
    23    {{- $authEnabled := include "common.utils.getValueFromKey" (dict "key" $valueKeyAuthEnabled "context" .context) -}}
    24  
    25    {{- if and (or (not $existingSecret) (eq $existingSecret "\"\"")) (eq $enabled "true") (eq $authEnabled "true") -}}
    26      {{- $requiredPasswords := list -}}
    27  
    28      {{- $requiredRootPassword := dict "valueKey" $valueKeyRootPassword "secret" .secret "field" "mongodb-root-password" -}}
    29      {{- $requiredPasswords = append $requiredPasswords $requiredRootPassword -}}
    30  
    31      {{- $valueUsername := include "common.utils.getValueFromKey" (dict "key" $valueKeyUsername "context" .context) }}
    32      {{- $valueDatabase := include "common.utils.getValueFromKey" (dict "key" $valueKeyDatabase "context" .context) }}
    33      {{- if and $valueUsername $valueDatabase -}}
    34          {{- $requiredPassword := dict "valueKey" $valueKeyPassword "secret" .secret "field" "mongodb-password" -}}
    35          {{- $requiredPasswords = append $requiredPasswords $requiredPassword -}}
    36      {{- end -}}
    37  
    38      {{- if (eq $architecture "replicaset") -}}
    39          {{- $requiredReplicaSetKey := dict "valueKey" $valueKeyReplicaSetKey "secret" .secret "field" "mongodb-replica-set-key" -}}
    40          {{- $requiredPasswords = append $requiredPasswords $requiredReplicaSetKey -}}
    41      {{- end -}}
    42  
    43      {{- include "common.validations.values.multiple.empty" (dict "required" $requiredPasswords "context" .context) -}}
    44  
    45    {{- end -}}
    46  {{- end -}}
    47  
    48  {{/*
    49  Auxiliary function to get the right value for existingSecret.
    50  
    51  Usage:
    52  {{ include "common.mongodb.values.auth.existingSecret" (dict "context" $) }}
    53  Params:
    54    - subchart - Boolean - Optional. Whether MongoDb is used as subchart or not. Default: false
    55  */}}
    56  {{- define "common.mongodb.values.auth.existingSecret" -}}
    57    {{- if .subchart -}}
    58      {{- .context.Values.mongodb.auth.existingSecret | quote -}}
    59    {{- else -}}
    60      {{- .context.Values.auth.existingSecret | quote -}}
    61    {{- end -}}
    62  {{- end -}}
    63  
    64  {{/*
    65  Auxiliary function to get the right value for enabled mongodb.
    66  
    67  Usage:
    68  {{ include "common.mongodb.values.enabled" (dict "context" $) }}
    69  */}}
    70  {{- define "common.mongodb.values.enabled" -}}
    71    {{- if .subchart -}}
    72      {{- printf "%v" .context.Values.mongodb.enabled -}}
    73    {{- else -}}
    74      {{- printf "%v" (not .context.Values.enabled) -}}
    75    {{- end -}}
    76  {{- end -}}
    77  
    78  {{/*
    79  Auxiliary function to get the right value for the key auth
    80  
    81  Usage:
    82  {{ include "common.mongodb.values.key.auth" (dict "subchart" "true" "context" $) }}
    83  Params:
    84    - subchart - Boolean - Optional. Whether MongoDB® is used as subchart or not. Default: false
    85  */}}
    86  {{- define "common.mongodb.values.key.auth" -}}
    87    {{- if .subchart -}}
    88      mongodb.auth
    89    {{- else -}}
    90      auth
    91    {{- end -}}
    92  {{- end -}}
    93  
    94  {{/*
    95  Auxiliary function to get the right value for architecture
    96  
    97  Usage:
    98  {{ include "common.mongodb.values.architecture" (dict "subchart" "true" "context" $) }}
    99  Params:
   100    - subchart - Boolean - Optional. Whether MongoDB® is used as subchart or not. Default: false
   101  */}}
   102  {{- define "common.mongodb.values.architecture" -}}
   103    {{- if .subchart -}}
   104      {{- .context.Values.mongodb.architecture -}}
   105    {{- else -}}
   106      {{- .context.Values.architecture -}}
   107    {{- end -}}
   108  {{- end -}}