@@ -116,4 +116,89 @@ Below are various little env snippets that multiple mainifests make use of
116116 value: '4203'
117117- name: NX_API_INTERNAL_BASE_URL
118118 value: http://nx-cloud-nx-api-service
119- {{- end }}
119+ {{- end }}
120+
121+ {{/*
122+ Volume Mounts Helper - combines standard mounts with custom mounts from values
123+ Usage: {{ include "nxCloud.volumeMounts" (dict "component" .Values.componentName "selfSigned" .Values.selfSignedCertConfigMap "resourceClass" (and .Values.resourceClassConfiguration.name .Values.resourceClassConfiguration.path)) }}
124+ */ }}
125+ {{- define " nxCloud.volumeMounts" -}}
126+ {{- $component := .component -}}
127+ {{- $selfSigned := .selfSigned -}}
128+ {{- $resourceClass := .resourceClass -}}
129+ {{- $hasCustomMounts := false -}}
130+ {{- if $component .deployment -}}
131+ {{- if $component .deployment.volumeMounts -}}
132+ {{- $hasCustomMounts = true -}}
133+ {{- end -}}
134+ {{- else if $component .volumeMounts -}}
135+ {{- $hasCustomMounts = true -}}
136+ {{- end -}}
137+
138+ {{- if or $selfSigned $resourceClass $hasCustomMounts }}
139+ volumeMounts:
140+ {{- if $selfSigned }}
141+ - mountPath: /usr/lib/jvm/java-17-amazon-corretto/jre/lib/security
142+ name: cacerts
143+ subPath: security
144+ - mountPath: /self-signed-certs
145+ name: self-signed-certs-volume
146+ {{- end }}
147+ {{- if $resourceClass }}
148+ - mountPath: /opt/nx-cloud/resource-classes
149+ name: resource-class-config-volume
150+ {{- end }}
151+ {{- if $component .deployment }}
152+ {{- if $component .deployment.volumeMounts }}
153+ {{- toYaml $component .deployment.volumeMounts | nindent 2 }}
154+ {{- end }}
155+ {{- else if $component .volumeMounts }}
156+ {{- toYaml $component .volumeMounts | nindent 2 }}
157+ {{- end }}
158+ {{- end }}
159+ {{- end -}}
160+
161+ {{/*
162+ Volumes Helper - combines standard volumes with custom volumes from values
163+ Usage: {{ include "nxCloud.volumes" (dict "component" .Values.componentName "selfSigned" .Values.selfSignedCertConfigMap "resourceClass" (and .Values.resourceClassConfiguration.name .Values.resourceClassConfiguration.path) "resourceClassConfig" .Values.resourceClassConfiguration) }}
164+ */ }}
165+ {{- define " nxCloud.volumes" -}}
166+ {{- $component := .component -}}
167+ {{- $selfSigned := .selfSigned -}}
168+ {{- $resourceClass := .resourceClass -}}
169+ {{- $resourceClassConfig := .resourceClassConfig -}}
170+ {{- $hasCustomVolumes := false -}}
171+ {{- if $component .deployment -}}
172+ {{- if $component .deployment.volumes -}}
173+ {{- $hasCustomVolumes = true -}}
174+ {{- end -}}
175+ {{- else if $component .volumes -}}
176+ {{- $hasCustomVolumes = true -}}
177+ {{- end -}}
178+
179+ {{- if or $selfSigned $resourceClass $hasCustomVolumes }}
180+ volumes:
181+ {{- if $selfSigned }}
182+ - emptyDir: {}
183+ name: cacerts
184+ - configMap:
185+ name: {{ $selfSigned }}
186+ name: self-signed-certs-volume
187+ {{- end }}
188+ {{- if $resourceClass }}
189+ - configMap:
190+ name: {{ $resourceClassConfig .name }}
191+ items:
192+ - key: {{ $resourceClassConfig .path }}
193+ path: agentConfigs.yaml
194+ name: resource-class-config-volume
195+ {{- end }}
196+ {{- if $component .deployment }}
197+ {{- if $component .deployment.volumes }}
198+ {{- toYaml $component .deployment.volumes | nindent 2 }}
199+ {{- end }}
200+ {{- else if $component .volumes }}
201+ {{- toYaml $component .volumes | nindent 2 }}
202+ {{- end }}
203+ {{- end }}
204+ {{- end -}}
0 commit comments