_helpers.tpl 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525
  1. {{/* vim: set filetype=mustache: */}}
  2. {{/*
  3. Expand the name of the chart.
  4. */}}
  5. {{- define "jaeger.name" -}}
  6. {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
  7. {{- end -}}
  8. {{/*
  9. Create a default fully qualified app name.
  10. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  11. If release name contains chart name it will be used as a full name.
  12. */}}
  13. {{- define "jaeger.fullname" -}}
  14. {{- if .Values.fullnameOverride -}}
  15. {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
  16. {{- else -}}
  17. {{- $name := default .Chart.Name .Values.nameOverride -}}
  18. {{- if contains $name .Release.Name -}}
  19. {{- .Release.Name | trunc 63 | trimSuffix "-" -}}
  20. {{- else -}}
  21. {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
  22. {{- end -}}
  23. {{- end -}}
  24. {{- end -}}
  25. {{/*
  26. Create chart name and version as used by the chart label.
  27. */}}
  28. {{- define "jaeger.chart" -}}
  29. {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
  30. {{- end -}}
  31. {{/*
  32. Create image tag value which defaults to .Chart.AppVersion.
  33. */}}
  34. {{- define "jaeger.image.tag" -}}
  35. {{- .Values.tag | default .Chart.AppVersion }}
  36. {{- end -}}
  37. {{/*
  38. Common labels
  39. */}}
  40. {{- define "jaeger.labels" -}}
  41. helm.sh/chart: {{ include "jaeger.chart" . }}
  42. {{ include "jaeger.selectorLabels" . }}
  43. {{- if .Chart.AppVersion }}
  44. app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
  45. {{- end }}
  46. app.kubernetes.io/managed-by: {{ .Release.Service }}
  47. {{- end -}}
  48. {{/*
  49. Selector labels
  50. */}}
  51. {{- define "jaeger.selectorLabels" -}}
  52. app.kubernetes.io/name: {{ include "jaeger.name" . }}
  53. app.kubernetes.io/instance: {{ .Release.Name }}
  54. {{- end -}}
  55. {{/*
  56. Create the name of the cassandra schema service account to use
  57. */}}
  58. {{- define "jaeger.cassandraSchema.serviceAccountName" -}}
  59. {{- if .Values.schema.serviceAccount.create -}}
  60. {{ default (printf "%s-cassandra-schema" (include "jaeger.fullname" .)) .Values.schema.serviceAccount.name }}
  61. {{- else -}}
  62. {{ default "default" .Values.schema.serviceAccount.name }}
  63. {{- end -}}
  64. {{- end -}}
  65. {{/*
  66. Create the name of the spark service account to use
  67. */}}
  68. {{- define "jaeger.spark.serviceAccountName" -}}
  69. {{- if .Values.spark.serviceAccount.create -}}
  70. {{ default (printf "%s-spark" (include "jaeger.fullname" .)) .Values.spark.serviceAccount.name }}
  71. {{- else -}}
  72. {{ default "default" .Values.spark.serviceAccount.name }}
  73. {{- end -}}
  74. {{- end -}}
  75. {{/*
  76. Create the name of the esIndexCleaner service account to use
  77. */}}
  78. {{- define "jaeger.esIndexCleaner.serviceAccountName" -}}
  79. {{- if .Values.esIndexCleaner.serviceAccount.create -}}
  80. {{ default (printf "%s-es-index-cleaner" (include "jaeger.fullname" .)) .Values.esIndexCleaner.serviceAccount.name }}
  81. {{- else -}}
  82. {{ default "default" .Values.esIndexCleaner.serviceAccount.name }}
  83. {{- end -}}
  84. {{- end -}}
  85. {{/*
  86. Create the name of the esRollover service account to use
  87. */}}
  88. {{- define "jaeger.esRollover.serviceAccountName" -}}
  89. {{- if .Values.esRollover.serviceAccount.create -}}
  90. {{ default (printf "%s-es-rollover" (include "jaeger.fullname" .)) .Values.esRollover.serviceAccount.name }}
  91. {{- else -}}
  92. {{ default "default" .Values.esRollover.serviceAccount.name }}
  93. {{- end -}}
  94. {{- end -}}
  95. {{/*
  96. Create the name of the esLookback service account to use
  97. */}}
  98. {{- define "jaeger.esLookback.serviceAccountName" -}}
  99. {{- if .Values.esLookback.serviceAccount.create -}}
  100. {{ default (printf "%s-es-lookback" (include "jaeger.fullname" .)) .Values.esLookback.serviceAccount.name }}
  101. {{- else -}}
  102. {{ default "default" .Values.esLookback.serviceAccount.name }}
  103. {{- end -}}
  104. {{- end -}}
  105. {{/*
  106. Create the name of the hotrod service account to use
  107. */}}
  108. {{- define "jaeger.hotrod.serviceAccountName" -}}
  109. {{- if .Values.hotrod.serviceAccount.create -}}
  110. {{ default (printf "%s-hotrod" (include "jaeger.fullname" .)) .Values.hotrod.serviceAccount.name }}
  111. {{- else -}}
  112. {{ default "default" .Values.hotrod.serviceAccount.name }}
  113. {{- end -}}
  114. {{- end -}}
  115. {{/*
  116. Create the name of the query service account to use
  117. */}}
  118. {{- define "jaeger.query.serviceAccountName" -}}
  119. {{- if .Values.query.serviceAccount.create -}}
  120. {{ default (include "jaeger.query.name" .) .Values.query.serviceAccount.name }}
  121. {{- else -}}
  122. {{ default "default" .Values.query.serviceAccount.name }}
  123. {{- end -}}
  124. {{- end -}}
  125. {{/*
  126. Create the name of the agent service account to use
  127. */}}
  128. {{- define "jaeger.agent.serviceAccountName" -}}
  129. {{- if .Values.agent.serviceAccount.create -}}
  130. {{ default (include "jaeger.agent.name" .) .Values.agent.serviceAccount.name }}
  131. {{- else -}}
  132. {{ default "default" .Values.agent.serviceAccount.name }}
  133. {{- end -}}
  134. {{- end -}}
  135. {{/*
  136. Create the name of the collector service account to use
  137. */}}
  138. {{- define "jaeger.collector.serviceAccountName" -}}
  139. {{- if .Values.collector.serviceAccount.create -}}
  140. {{ default (include "jaeger.collector.name" .) .Values.collector.serviceAccount.name }}
  141. {{- else -}}
  142. {{ default "default" .Values.collector.serviceAccount.name }}
  143. {{- end -}}
  144. {{- end -}}
  145. {{/*
  146. Create the collector ingress host
  147. */}}
  148. {{- define "jaeger.collector.ingressHost" -}}
  149. {{- if (kindIs "string" .) }}
  150. {{- . }}
  151. {{- else }}
  152. {{- .host }}
  153. {{- end }}
  154. {{- end -}}
  155. {{/*
  156. Create the collector ingress servicePort
  157. */}}
  158. {{- define "jaeger.collector.ingressServicePort" -}}
  159. {{- if (kindIs "string" .context) }}
  160. {{- .defaultServicePort }}
  161. {{- else }}
  162. {{- .context.servicePort }}
  163. {{- end }}
  164. {{- end -}}
  165. {{/*
  166. Create the name of the ingester service account to use
  167. */}}
  168. {{- define "jaeger.ingester.serviceAccountName" -}}
  169. {{- if .Values.ingester.serviceAccount.create -}}
  170. {{ default (include "jaeger.ingester.name" .) .Values.ingester.serviceAccount.name }}
  171. {{- else -}}
  172. {{ default "default" .Values.ingester.serviceAccount.name }}
  173. {{- end -}}
  174. {{- end -}}
  175. {{/*
  176. Create a fully qualified query name.
  177. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  178. */}}
  179. {{- define "jaeger.query.name" -}}
  180. {{- $nameGlobalOverride := printf "%s-query" (include "jaeger.fullname" .) -}}
  181. {{- if .Values.query.fullnameOverride -}}
  182. {{- printf "%s" .Values.query.fullnameOverride | trunc 63 | trimSuffix "-" -}}
  183. {{- else -}}
  184. {{- printf "%s" $nameGlobalOverride | trunc 63 | trimSuffix "-" -}}
  185. {{- end -}}
  186. {{- end -}}
  187. {{/*
  188. Create a fully qualified agent name.
  189. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  190. */}}
  191. {{- define "jaeger.agent.name" -}}
  192. {{- $nameGlobalOverride := printf "%s-agent" (include "jaeger.fullname" .) -}}
  193. {{- if .Values.agent.fullnameOverride -}}
  194. {{- printf "%s" .Values.agent.fullnameOverride | trunc 63 | trimSuffix "-" -}}
  195. {{- else -}}
  196. {{- printf "%s" $nameGlobalOverride | trunc 63 | trimSuffix "-" -}}
  197. {{- end -}}
  198. {{- end -}}
  199. {{/*
  200. Create a fully qualified collector name.
  201. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  202. */}}
  203. {{- define "jaeger.collector.name" -}}
  204. {{- $nameGlobalOverride := printf "%s-collector" (include "jaeger.fullname" .) -}}
  205. {{- if .Values.collector.fullnameOverride -}}
  206. {{- printf "%s" .Values.collector.fullnameOverride | trunc 63 | trimSuffix "-" -}}
  207. {{- else -}}
  208. {{- printf "%s" $nameGlobalOverride | trunc 63 | trimSuffix "-" -}}
  209. {{- end -}}
  210. {{- end -}}
  211. {{/*
  212. Create a fully qualified ingester name.
  213. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  214. */}}
  215. {{- define "jaeger.ingester.name" -}}
  216. {{- $nameGlobalOverride := printf "%s-ingester" (include "jaeger.fullname" .) -}}
  217. {{- if .Values.ingester.fullnameOverride -}}
  218. {{- printf "%s" .Values.ingester.fullnameOverride | trunc 63 | trimSuffix "-" -}}
  219. {{- else -}}
  220. {{- printf "%s" $nameGlobalOverride | trunc 63 | trimSuffix "-" -}}
  221. {{- end -}}
  222. {{- end -}}
  223. {{- define "cassandra.host" -}}
  224. {{- if .Values.provisionDataStore.cassandra -}}
  225. {{- if .Values.storage.cassandra.nameOverride }}
  226. {{- printf "%s" .Values.storage.cassandra.nameOverride | trunc 63 | trimSuffix "-" }}
  227. {{- else }}
  228. {{- printf "%s-%s" .Release.Name "cassandra" | trunc 63 | trimSuffix "-" -}}
  229. {{- end -}}
  230. {{- else }}
  231. {{- .Values.storage.cassandra.host }}
  232. {{- end -}}
  233. {{- end -}}
  234. {{- define "cassandra.contact_points" -}}
  235. {{- $port := .Values.storage.cassandra.port | toString }}
  236. {{- if .Values.provisionDataStore.cassandra -}}
  237. {{- if .Values.storage.cassandra.nameOverride }}
  238. {{- $host := printf "%s" .Values.storage.cassandra.nameOverride | trunc 63 | trimSuffix "-" -}}
  239. {{- printf "%s:%s" $host $port }}
  240. {{- else }}
  241. {{- $host := printf "%s-%s" .Release.Name "cassandra" | trunc 63 | trimSuffix "-" -}}
  242. {{- printf "%s:%s" $host $port }}
  243. {{- end -}}
  244. {{- else }}
  245. {{- printf "%s:%s" .Values.storage.cassandra.host $port }}
  246. {{- end -}}
  247. {{- end -}}
  248. {{/*
  249. Create a default fully qualified app name.
  250. We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
  251. */}}
  252. {{- define "elasticsearch.client.url" -}}
  253. {{- $port := .Values.storage.elasticsearch.port | toString -}}
  254. {{- printf "%s://%s:%s" .Values.storage.elasticsearch.scheme .Values.storage.elasticsearch.host $port }}
  255. {{- end -}}
  256. {{- define "jaeger.hotrod.tracing.host" -}}
  257. {{- default (include "jaeger.agent.name" .) .Values.hotrod.tracing.host -}}
  258. {{- end -}}
  259. {{/*
  260. Configure list of IP CIDRs allowed access to load balancer (if supported)
  261. */}}
  262. {{- define "loadBalancerSourceRanges" -}}
  263. {{- if .service.loadBalancerSourceRanges }}
  264. loadBalancerSourceRanges:
  265. {{- range $cidr := .service.loadBalancerSourceRanges }}
  266. - {{ $cidr }}
  267. {{- end }}
  268. {{- end }}
  269. {{- end -}}
  270. {{- define "helm-toolkit.utils.joinListWithComma" -}}
  271. {{- $local := dict "first" true -}}
  272. {{- range $k, $v := . -}}{{- if not $local.first -}},{{- end -}}{{- $v -}}{{- $_ := set $local "first" false -}}{{- end -}}
  273. {{- end -}}
  274. {{/*
  275. Cassandra related environment variables
  276. */}}
  277. {{- define "cassandra.env" -}}
  278. - name: CASSANDRA_SERVERS
  279. value: {{ include "cassandra.host" . }}
  280. - name: CASSANDRA_PORT
  281. value: {{ .Values.storage.cassandra.port | quote }}
  282. {{ if .Values.storage.cassandra.tls.enabled }}
  283. - name: CASSANDRA_TLS_ENABLED
  284. value: "true"
  285. - name: CASSANDRA_TLS_SERVER_NAME
  286. valueFrom:
  287. secretKeyRef:
  288. name: {{ .Values.storage.cassandra.tls.secretName }}
  289. key: commonName
  290. - name: CASSANDRA_TLS_KEY
  291. value: "/cassandra-tls/client-key.pem"
  292. - name: CASSANDRA_TLS_CERT
  293. value: "/cassandra-tls/client-cert.pem"
  294. - name: CASSANDRA_TLS_CA
  295. value: "/cassandra-tls/ca-cert.pem"
  296. {{- end }}
  297. {{- if .Values.storage.cassandra.keyspace }}
  298. - name: CASSANDRA_KEYSPACE
  299. value: {{ .Values.storage.cassandra.keyspace }}
  300. {{- end }}
  301. - name: CASSANDRA_USERNAME
  302. value: {{ .Values.storage.cassandra.user }}
  303. - name: CASSANDRA_PASSWORD
  304. valueFrom:
  305. secretKeyRef:
  306. name: {{ if .Values.storage.cassandra.existingSecret }}{{ .Values.storage.cassandra.existingSecret }}{{- else }}{{ include "jaeger.fullname" . }}-cassandra{{- end }}
  307. key: password
  308. {{- range $key, $value := .Values.storage.cassandra.env }}
  309. - name: {{ $key | quote }}
  310. value: {{ $value | quote }}
  311. {{ end -}}
  312. {{- if .Values.storage.cassandra.extraEnv }}
  313. {{ toYaml .Values.storage.cassandra.extraEnv }}
  314. {{- end }}
  315. {{- end -}}
  316. {{/*
  317. Elasticsearch related environment variables
  318. */}}
  319. {{- define "elasticsearch.env" -}}
  320. - name: ES_SERVER_URLS
  321. value: {{ include "elasticsearch.client.url" . }}
  322. {{- if not .Values.storage.elasticsearch.anonymous }}
  323. - name: ES_USERNAME
  324. value: {{ .Values.storage.elasticsearch.user }}
  325. {{- end }}
  326. {{- if .Values.storage.elasticsearch.usePassword }}
  327. - name: ES_PASSWORD
  328. valueFrom:
  329. secretKeyRef:
  330. name: {{ if .Values.storage.elasticsearch.existingSecret }}{{ .Values.storage.elasticsearch.existingSecret }}{{- else }}{{ include "jaeger.fullname" . }}-elasticsearch{{- end }}
  331. key: {{ default "password" .Values.storage.elasticsearch.existingSecretKey }}
  332. {{- end }}
  333. {{- if .Values.storage.elasticsearch.tls.enabled }}
  334. - name: ES_TLS_ENABLED
  335. value: "true"
  336. - name: ES_TLS_CA
  337. value: /es-tls/ca-cert.pem
  338. {{- end }}
  339. {{- if .Values.storage.elasticsearch.indexPrefix }}
  340. - name: ES_INDEX_PREFIX
  341. value: {{ .Values.storage.elasticsearch.indexPrefix }}
  342. {{- end }}
  343. {{- range $key, $value := .Values.storage.elasticsearch.env }}
  344. - name: {{ $key | quote }}
  345. value: {{ $value | quote }}
  346. {{ end -}}
  347. {{- if .Values.storage.elasticsearch.extraEnv }}
  348. {{ toYaml .Values.storage.elasticsearch.extraEnv }}
  349. {{- end }}
  350. {{- end -}}
  351. {{/*
  352. grpcPlugin related environment variables
  353. */}}
  354. {{- define "grpcPlugin.env" -}}
  355. {{- if .Values.storage.grpcPlugin.extraEnv }}
  356. {{- toYaml .Values.storage.grpcPlugin.extraEnv }}
  357. {{- end }}
  358. {{- end -}}
  359. {{/*
  360. Cassandra, Elasticsearch, or grpc-plugin related environment variables depending on which is used
  361. */}}
  362. {{- define "storage.env" -}}
  363. {{- if eq .Values.storage.type "cassandra" -}}
  364. {{ include "cassandra.env" . }}
  365. {{- else if eq .Values.storage.type "elasticsearch" -}}
  366. {{ include "elasticsearch.env" . }}
  367. {{- else if eq .Values.storage.type "grpc-plugin" -}}
  368. {{ include "grpcPlugin.env" . }}
  369. {{- end -}}
  370. {{- end -}}
  371. {{/*
  372. Cassandra related command line options
  373. */}}
  374. {{- define "cassandra.cmdArgs" -}}
  375. {{- range $key, $value := .Values.storage.cassandra.cmdlineParams -}}
  376. {{- if $value }}
  377. - --{{ $key }}={{ $value }}
  378. {{- else }}
  379. - --{{ $key }}
  380. {{- end -}}
  381. {{- end -}}
  382. {{- end -}}
  383. {{/*
  384. Elasticsearch related command line options
  385. */}}
  386. {{- define "elasticsearch.cmdArgs" -}}
  387. {{- range $key, $value := .Values.storage.elasticsearch.cmdlineParams -}}
  388. {{- if $value }}
  389. - --{{ $key }}={{ $value }}
  390. {{- else }}
  391. - --{{ $key }}
  392. {{- end -}}
  393. {{- end -}}
  394. {{- end -}}
  395. {{/*
  396. Cassandra or Elasticsearch related command line options depending on which is used
  397. */}}
  398. {{- define "storage.cmdArgs" -}}
  399. {{- if eq .Values.storage.type "cassandra" -}}
  400. {{- include "cassandra.cmdArgs" . -}}
  401. {{- else if eq .Values.storage.type "elasticsearch" -}}
  402. {{- include "elasticsearch.cmdArgs" . -}}
  403. {{- end -}}
  404. {{- end -}}
  405. {{/*
  406. Add extra argument to the command line options
  407. Usage:
  408. {{ include "extra.cmdArgs" ( dict "cmdlineParams" .Values.collector.cmdlineParams ) | nindent 10 }}
  409. */}}
  410. {{- define "extra.cmdArgs" -}}
  411. {{- range $key, $value := .cmdlineParams -}}
  412. {{- if $value }}
  413. - --{{ $key }}={{ $value }}
  414. {{- else }}
  415. - --{{ $key }}
  416. {{- end }}
  417. {{- end -}}
  418. {{- end -}}
  419. {{/*
  420. Provides a basic ingress network policy
  421. */}}
  422. {{- define "jaeger.ingress.networkPolicy" -}}
  423. apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
  424. kind: NetworkPolicy
  425. metadata:
  426. name: {{ printf "%s-ingress" .Name }}
  427. namespace: {{ .Release.Namespace }}
  428. labels:
  429. app.kubernetes.io/component: {{ .Component }}
  430. {{- include "jaeger.labels" . | nindent 4 }}
  431. spec:
  432. podSelector:
  433. matchLabels:
  434. app.kubernetes.io/component: {{ .Component }}
  435. policyTypes:
  436. - Ingress
  437. ingress:
  438. {{- if or .ComponentValues.networkPolicy.ingressRules.namespaceSelector .ComponentValues.networkPolicy.ingressRules.podSelector }}
  439. - from:
  440. {{- if .ComponentValues.networkPolicy.ingressRules.namespaceSelector }}
  441. - namespaceSelector:
  442. matchLabels: {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.ingressRules.namespaceSelector "context" $) | nindent 10 }}
  443. {{- end }}
  444. {{- if .ComponentValues.networkPolicy.ingressRules.podSelector }}
  445. - podSelector:
  446. matchLabels: {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.ingressRules.podSelector "context" $) | nindent 10 }}
  447. {{- end }}
  448. {{- end }}
  449. {{- if .ComponentValues.networkPolicy.ingressRules.customRules }}
  450. {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.ingressRules.customRules "context" $) | nindent 2 }}
  451. {{- end }}
  452. {{- end -}}
  453. {{/*
  454. Provides a basic egress network policy
  455. */}}
  456. {{- define "jaeger.egress.networkPolicy" -}}
  457. apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
  458. kind: NetworkPolicy
  459. metadata:
  460. name: {{ printf "%s-egress" .Name }}
  461. namespace: {{ .Release.Namespace }}
  462. labels:
  463. app.kubernetes.io/component: {{ .Component }}
  464. {{- include "jaeger.labels" . | nindent 4 }}
  465. spec:
  466. podSelector:
  467. matchLabels:
  468. app.kubernetes.io/component: {{ .Component }}
  469. policyTypes:
  470. - Egress
  471. egress:
  472. {{- if or .ComponentValues.networkPolicy.egressRules.namespaceSelector .ComponentValues.networkPolicy.egressRules.podSelector }}
  473. - to:
  474. {{- if .ComponentValues.networkPolicy.egressRules.namespaceSelector }}
  475. - namespaceSelector:
  476. matchLabels: {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.egressRules.namespaceSelector "context" $) | nindent 10 }}
  477. {{- end }}
  478. {{- if .ComponentValues.networkPolicy.egressRules.podSelector }}
  479. - podSelector:
  480. matchLabels: {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.egressRules.podSelector "context" $) | nindent 10 }}
  481. {{- end }}
  482. {{- end }}
  483. {{- if .ComponentValues.networkPolicy.egressRules.customRules }}
  484. {{- include "common.tplvalues.render" (dict "value" .ComponentValues.networkPolicy.egressRules.customRules "context" $) | nindent 2 }}
  485. {{- end }}
  486. {{- end -}}