Charts CI

```
Updated:
  argo/argo-cd:
    - 5.45.2
  bitnami/airflow:
    - 15.0.3
  bitnami/kafka:
    - 25.1.8
  bitnami/mariadb:
    - 13.1.3
  bitnami/postgresql:
    - 12.11.0
  bitnami/spark:
    - 7.2.1
  bitnami/tomcat:
    - 10.10.3
  bitnami/wordpress:
    - 17.1.7
  clastix/kamaji:
    - 0.12.5
  datadog/datadog:
    - 3.35.1
  f5/f5-bigip-ctlr:
    - 0.0.26
  haproxy/haproxy:
    - 1.33.0
  jenkins/jenkins:
    - 4.6.3
  kuma/kuma:
    - 2.4.1
  minio/minio-operator:
    - 5.0.8
  openebs/openebs:
    - 3.9.0
  redpanda/redpanda:
    - 5.3.3
  speedscale/speedscale-operator:
    - 1.3.30
  sysdig/sysdig:
    - 1.16.11
```
pull/877/head
github-actions[bot] 2023-09-07 17:03:58 +00:00
parent 3e67c5d1a8
commit 3b5abdf554
267 changed files with 4915 additions and 1206 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
assets/kuma/kuma-2.4.1.tgz Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,7 +1,7 @@
annotations: annotations:
artifacthub.io/changes: | artifacthub.io/changes: |
- kind: fixed - kind: fixed
description: fixed example for configs.styles to be sidebar instead of nav-bar description: do not hardcode the pathtype of the grpc ingress rule when using a single ingress resource in aws alb
artifacthub.io/signKey: | artifacthub.io/signKey: |
fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252 fingerprint: 2B8F22F57260EFA67BE1C5824B11F800CD9D2252
url: https://argoproj.github.io/argo-helm/pgp_keys.asc url: https://argoproj.github.io/argo-helm/pgp_keys.asc
@ -33,4 +33,4 @@ name: argo-cd
sources: sources:
- https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd - https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd
- https://github.com/argoproj/argo-cd - https://github.com/argoproj/argo-cd
version: 5.45.1 version: 5.45.2

View File

@ -39,7 +39,7 @@ spec:
{{- range $p := $paths }} {{- range $p := $paths }}
{{- if and $.Values.server.ingressGrpc.isAWSALB $.Values.server.ingressGrpc.enabled }} {{- if and $.Values.server.ingressGrpc.isAWSALB $.Values.server.ingressGrpc.enabled }}
- path: {{ $p }} - path: {{ $p }}
pathType: Prefix pathType: {{ $.Values.server.ingressGrpc.pathType }}
backend: backend:
service: service:
name: {{ template "argo-cd.server.fullname" $ }}-grpc name: {{ template "argo-cd.server.fullname" $ }}-grpc

View File

@ -1,12 +1,12 @@
dependencies: dependencies:
- name: redis - name: redis
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 18.0.0 version: 18.0.2
- name: postgresql - name: postgresql
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 12.10.0 version: 12.10.0
- name: common - name: common
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 2.9.0 version: 2.10.0
digest: sha256:46bd4e57c97682d567cd5666dd8e7dc636ebf89445a26548b6ba8576e173b6f6 digest: sha256:909a1b88eddc7aa1b4f32055f052a679aed3f01b4790830724c09073d99c692b
generated: "2023-08-28T09:05:13.118958317+02:00" generated: "2023-09-05T11:31:11.531432+02:00"

View File

@ -50,4 +50,4 @@ maintainers:
name: airflow name: airflow
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/airflow - https://github.com/bitnami/charts/tree/main/bitnami/airflow
version: 15.0.2 version: 15.0.3

View File

@ -2,7 +2,7 @@ annotations:
category: Infrastructure category: Infrastructure
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 2.9.0 appVersion: 2.9.2
description: A Library Helm Chart for grouping common logic between bitnami charts. description: A Library Helm Chart for grouping common logic between bitnami charts.
This chart is not deployable by itself. This chart is not deployable by itself.
home: https://bitnami.com home: https://bitnami.com
@ -20,4 +20,4 @@ name: common
sources: sources:
- https://github.com/bitnami/charts - https://github.com/bitnami/charts
type: library type: library
version: 2.9.0 version: 2.10.0

View File

@ -60,12 +60,13 @@ Return a topologyKey definition
{{/* {{/*
Return a soft podAffinity/podAntiAffinity definition Return a soft podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.soft" -}} {{- define "common.affinities.pods.soft" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
preferredDuringSchedulingIgnoredDuringExecution: preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm: - podAffinityTerm:
labelSelector: labelSelector:
@ -78,16 +79,30 @@ preferredDuringSchedulingIgnoredDuringExecution:
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: 1 weight: 1
{{- range $extraPodAffinityTerms }}
- podAffinityTerm:
labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 10 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: {{ .weight | default 1 -}}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*
Return a hard podAffinity/podAntiAffinity definition Return a hard podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.hard" -}} {{- define "common.affinities.pods.hard" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector: - labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }} matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }}
@ -98,6 +113,17 @@ requiredDuringSchedulingIgnoredDuringExecution:
{{ $key }}: {{ $value | quote }} {{ $key }}: {{ $value | quote }}
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- range $extraPodAffinityTerms }}
- labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 8 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*

View File

@ -11,17 +11,28 @@ Usage:
{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} {{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }}
*/}} */}}
{{- define "common.tplvalues.render" -}} {{- define "common.tplvalues.render" -}}
{{- if .scope }} {{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }}
{{- if typeIs "string" .value }} {{- if contains "{{" (toJson .value) }}
{{- tpl (cat "{{- with $.RelativeScope -}}" .value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- if .scope }}
{{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }}
{{- else }} {{- else }}
{{- tpl (cat "{{- with $.RelativeScope -}}" (.value | toYaml) "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- tpl $value .context }}
{{- end }} {{- end }}
{{- else }} {{- else }}
{{- if typeIs "string" .value }} {{- $value }}
{{- tpl .value .context }} {{- end }}
{{- else }}
{{- tpl (.value | toYaml) .context }}
{{- end }}
{{- end -}} {{- end -}}
{{/*
Merge a list of values that contains template after rendering them.
Merge precedence is consistent with http://masterminds.github.io/sprig/dicts.html#merge-mustmerge
Usage:
{{ include "common.tplvalues.merge" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }}
*/}}
{{- define "common.tplvalues.merge" -}}
{{- $dst := dict -}}
{{- range .values -}}
{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | merge $dst -}}
{{- end -}}
{{ $dst | toYaml }}
{{- end -}} {{- end -}}

View File

@ -33,4 +33,4 @@ maintainers:
name: redis name: redis
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/redis - https://github.com/bitnami/charts/tree/main/bitnami/redis
version: 18.0.0 version: 18.0.2

View File

@ -790,6 +790,12 @@ This issue can be mitigated by splitting the upgrade into two stages: one for al
- Stage 2 (anything else that is not up to date, in this case only master): - Stage 2 (anything else that is not up to date, in this case only master):
`helm upgrade oci://registry-1.docker.io/bitnamicharts/redis` `helm upgrade oci://registry-1.docker.io/bitnamicharts/redis`
### To 18.0.0
This major version updates the Redis® docker image version used from `7.0` to `7.2`, the new stable version. There are no major changes in the chart, but we recommend checking the [Redis® 7.2 release notes](https://raw.githubusercontent.com/redis/redis/7.2/00-RELEASENOTES) before upgrading.
NOTE: Due to an error in our release process, versions higher or equal than 17.15.4 already use 7.2 by default.
### To 17.0.0 ### To 17.0.0
This major version updates the Redis® docker image version used from `6.2` to `7.0`, the new stable version. There are no major changes in the chart, but we recommend checking the [Redis® 7.0 release notes](https://raw.githubusercontent.com/redis/redis/7.0/00-RELEASENOTES) before upgrading. This major version updates the Redis® docker image version used from `6.2` to `7.0`, the new stable version. There are no major changes in the chart, but we recommend checking the [Redis® 7.0 release notes](https://raw.githubusercontent.com/redis/redis/7.0/00-RELEASENOTES) before upgrading.
@ -976,4 +982,4 @@ Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.

View File

@ -30,7 +30,7 @@ data:
port: {{ print $port | b64enc | quote }} port: {{ print $port | b64enc | quote }}
password: {{ print $password | b64enc | quote }} password: {{ print $password | b64enc | quote }}
{{- if $password }} {{- if $password }}
uri: {{ printf "redis://%s@%s:%s" $password $host $port | b64enc | quote }} uri: {{ printf "redis://:%s@%s:%s" $password $host $port | b64enc | quote }}
{{- else }} {{- else }}
uri: {{ printf "redis://%s:%s" $host $port | b64enc | quote }} uri: {{ printf "redis://%s:%s" $host $port | b64enc | quote }}
{{- end }} {{- end }}

View File

@ -28,7 +28,7 @@ data:
kind: Pod kind: Pod
metadata: metadata:
name: k8s-executor-pod name: k8s-executor-pod
{{- $labels := merge .Values.worker.podLabels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.worker.podLabels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 8 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 8 }}
app.kubernetes.io/component: worker app.kubernetes.io/component: worker
{{- if .Values.worker.podAnnotations }} {{- if .Values.worker.podAnnotations }}

View File

@ -16,7 +16,7 @@ metadata:
{{- end }} {{- end }}
spec: spec:
replicas: 1 replicas: 1
{{- $podLabels := merge .Values.metrics.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics

View File

@ -12,7 +12,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- if or .Values.metrics.service.annotations .Values.commonAnnotations }} {{- if or .Values.metrics.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.metrics.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
@ -26,7 +26,7 @@ spec:
port: {{ .Values.metrics.service.ports.http }} port: {{ .Values.metrics.service.ports.http }}
protocol: TCP protocol: TCP
targetPort: metrics targetPort: metrics
{{- $podLabels := merge .Values.metrics.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- end }} {{- end }}

View File

@ -9,7 +9,7 @@ kind: ServiceMonitor
metadata: metadata:
name: {{ printf "%s-exporter" (include "common.names.fullname" .) }} name: {{ printf "%s-exporter" (include "common.names.fullname" .) }}
namespace: {{ default .Release.Namespace .Values.metrics.serviceMonitor.namespace | quote }} namespace: {{ default .Release.Namespace .Values.metrics.serviceMonitor.namespace | quote }}
{{- $labels := merge .Values.metrics.serviceMonitor.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- if .Values.commonAnnotations }} {{- if .Values.commonAnnotations }}

View File

@ -11,7 +11,7 @@ metadata:
namespace: {{ .Release.Namespace | quote }} namespace: {{ .Release.Namespace | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.serviceAccount.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}

View File

@ -15,7 +15,7 @@ metadata:
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | trim | nindent 4 }} annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | trim | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
{{- $podLabels := merge .Values.scheduler.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.scheduler.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: scheduler app.kubernetes.io/component: scheduler

View File

@ -18,7 +18,7 @@ spec:
{{- if .Values.scheduler.pdb.maxUnavailable }} {{- if .Values.scheduler.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.scheduler.pdb.maxUnavailable }} maxUnavailable: {{ .Values.scheduler.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.scheduler.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.scheduler.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: scheduler app.kubernetes.io/component: scheduler

View File

@ -20,7 +20,7 @@ spec:
- name: task-logs - name: task-logs
port: {{ .Values.worker.containerPorts.http }} port: {{ .Values.worker.containerPorts.http }}
targetPort: task-logs targetPort: task-logs
{{- $podLabels := merge .Values.scheduler.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.scheduler.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: scheduler app.kubernetes.io/component: scheduler
{{- end }} {{- end }}

View File

@ -14,7 +14,7 @@ metadata:
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" (dict "value" .Values.commonAnnotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
{{- $podLabels := merge .Values.web.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.web.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: web app.kubernetes.io/component: web

View File

@ -11,7 +11,7 @@ metadata:
namespace: {{ .Release.Namespace | quote }} namespace: {{ .Release.Namespace | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- if or .Values.ingress.annotations .Values.commonAnnotations }} {{- if or .Values.ingress.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.ingress.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:

View File

@ -18,7 +18,7 @@ spec:
{{- if .Values.web.pdb.maxUnavailable }} {{- if .Values.web.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.web.pdb.maxUnavailable }} maxUnavailable: {{ .Values.web.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.web.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.web.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: web app.kubernetes.io/component: web

View File

@ -11,7 +11,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: web app.kubernetes.io/component: web
{{- if or .Values.service.annotations .Values.commonAnnotations }} {{- if or .Values.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
@ -47,6 +47,6 @@ spec:
{{- if .Values.service.extraPorts }} {{- if .Values.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.service.extraPorts "context" $) | nindent 4 }} {{- include "common.tplvalues.render" (dict "value" .Values.service.extraPorts "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.web.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.web.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: web app.kubernetes.io/component: web

View File

@ -18,7 +18,7 @@ spec:
{{- if .Values.worker.pdb.maxUnavailable }} {{- if .Values.worker.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.worker.pdb.maxUnavailable }} maxUnavailable: {{ .Values.worker.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.worker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.worker.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: worker app.kubernetes.io/component: worker

View File

@ -20,6 +20,6 @@ spec:
- name: worker - name: worker
port: {{ .Values.worker.containerPorts.http }} port: {{ .Values.worker.containerPorts.http }}
targetPort: worker targetPort: worker
{{- $podLabels := merge .Values.worker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.worker.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: worker app.kubernetes.io/component: worker

View File

@ -19,7 +19,7 @@ spec:
podManagementPolicy: {{ .Values.worker.podManagementPolicy | quote }} podManagementPolicy: {{ .Values.worker.podManagementPolicy | quote }}
{{- end }} {{- end }}
replicas: {{ .Values.worker.replicaCount }} replicas: {{ .Values.worker.replicaCount }}
{{- $podLabels := merge .Values.worker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.worker.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: worker app.kubernetes.io/component: worker

View File

@ -1,9 +1,9 @@
dependencies: dependencies:
- name: zookeeper - name: zookeeper
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 12.1.1 version: 12.1.2
- name: common - name: common
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 2.9.1 version: 2.10.0
digest: sha256:d80576ab604d6ae40689f985ffff711a95525fd2e04df86f7524300fb5c7b6de digest: sha256:5e278241ce8a477449715df19d6e50542ff7afb81802a2cc8b4e04b8c0b35833
generated: "2023-08-30T12:23:35.3141937Z" generated: "2023-09-05T14:19:33.178442157Z"

View File

@ -6,15 +6,15 @@ annotations:
category: Infrastructure category: Infrastructure
images: | images: |
- name: jmx-exporter - name: jmx-exporter
image: docker.io/bitnami/jmx-exporter:0.19.0-debian-11-r57 image: docker.io/bitnami/jmx-exporter:0.19.0-debian-11-r66
- name: kafka-exporter - name: kafka-exporter
image: docker.io/bitnami/kafka-exporter:1.7.0-debian-11-r93 image: docker.io/bitnami/kafka-exporter:1.7.0-debian-11-r102
- name: kafka - name: kafka
image: docker.io/bitnami/kafka:3.5.1-debian-11-r35 image: docker.io/bitnami/kafka:3.5.1-debian-11-r41
- name: kubectl - name: kubectl
image: docker.io/bitnami/kubectl:1.25.13-debian-11-r5 image: docker.io/bitnami/kubectl:1.25.13-debian-11-r11
- name: os-shell - name: os-shell
image: docker.io/bitnami/os-shell:11-debian-11-r51 image: docker.io/bitnami/os-shell:11-debian-11-r60
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 3.5.1 appVersion: 3.5.1
@ -45,4 +45,4 @@ maintainers:
name: kafka name: kafka
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/kafka - https://github.com/bitnami/charts/tree/main/bitnami/kafka
version: 25.1.5 version: 25.1.8

View File

@ -82,7 +82,7 @@ The command removes all the Kubernetes components associated with the chart and
| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- | | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| `image.registry` | Kafka image registry | `docker.io` | | `image.registry` | Kafka image registry | `docker.io` |
| `image.repository` | Kafka image repository | `bitnami/kafka` | | `image.repository` | Kafka image repository | `bitnami/kafka` |
| `image.tag` | Kafka image tag (immutable tags are recommended) | `3.5.1-debian-11-r35` | | `image.tag` | Kafka image tag (immutable tags are recommended) | `3.5.1-debian-11-r41` |
| `image.digest` | Kafka image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `image.digest` | Kafka image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `image.pullPolicy` | Kafka image pull policy | `IfNotPresent` | | `image.pullPolicy` | Kafka image pull policy | `IfNotPresent` |
| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | | `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |
@ -91,6 +91,8 @@ The command removes all the Kubernetes components associated with the chart and
| `config` | Configuration file for Kafka, rendered as a template. Auto-generated based on chart values when not specified. | `""` | | `config` | Configuration file for Kafka, rendered as a template. Auto-generated based on chart values when not specified. | `""` |
| `existingConfigmap` | ConfigMap with Kafka Configuration | `""` | | `existingConfigmap` | ConfigMap with Kafka Configuration | `""` |
| `extraConfig` | Additional configuration to be appended at the end of the generated Kafka configuration file. | `""` | | `extraConfig` | Additional configuration to be appended at the end of the generated Kafka configuration file. | `""` |
| `secretConfig` | Additional configuration to be appended at the end of the generated Kafka configuration file. | `""` |
| `existingSecretConfig` | Secret with additonal configuration that will be appended to the end of the generated Kafka configuration file | `""` |
| `log4j` | An optional log4j.properties file to overwrite the default of the Kafka brokers | `""` | | `log4j` | An optional log4j.properties file to overwrite the default of the Kafka brokers | `""` |
| `existingLog4jConfigMap` | The name of an existing ConfigMap containing a log4j.properties file | `""` | | `existingLog4jConfigMap` | The name of an existing ConfigMap containing a log4j.properties file | `""` |
| `heapOpts` | Kafka Java Heap size | `-Xmx1024m -Xms1024m` | | `heapOpts` | Kafka Java Heap size | `-Xmx1024m -Xms1024m` |
@ -181,6 +183,8 @@ The command removes all the Kubernetes components associated with the chart and
| `controller.config` | Configuration file for Kafka controller-eligible nodes, rendered as a template. Auto-generated based on chart values when not specified. | `""` | | `controller.config` | Configuration file for Kafka controller-eligible nodes, rendered as a template. Auto-generated based on chart values when not specified. | `""` |
| `controller.existingConfigmap` | ConfigMap with Kafka Configuration for controller-eligible nodes. | `""` | | `controller.existingConfigmap` | ConfigMap with Kafka Configuration for controller-eligible nodes. | `""` |
| `controller.extraConfig` | Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file. | `""` | | `controller.extraConfig` | Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file. | `""` |
| `controller.secretConfig` | Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file. | `""` |
| `controller.existingSecretConfig` | Secret with additonal configuration that will be appended to the end of the generated Kafka controller-eligible nodes configuration file | `""` |
| `controller.heapOpts` | Kafka Java Heap size for controller-eligible nodes | `-Xmx1024m -Xms1024m` | | `controller.heapOpts` | Kafka Java Heap size for controller-eligible nodes | `-Xmx1024m -Xms1024m` |
| `controller.command` | Override Kafka container command | `[]` | | `controller.command` | Override Kafka container command | `[]` |
| `controller.args` | Override Kafka container arguments | `[]` | | `controller.args` | Override Kafka container arguments | `[]` |
@ -277,6 +281,8 @@ The command removes all the Kubernetes components associated with the chart and
| `broker.config` | Configuration file for Kafka broker-only nodes, rendered as a template. Auto-generated based on chart values when not specified. | `""` | | `broker.config` | Configuration file for Kafka broker-only nodes, rendered as a template. Auto-generated based on chart values when not specified. | `""` |
| `broker.existingConfigmap` | ConfigMap with Kafka Configuration for broker-only nodes. | `""` | | `broker.existingConfigmap` | ConfigMap with Kafka Configuration for broker-only nodes. | `""` |
| `broker.extraConfig` | Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file. | `""` | | `broker.extraConfig` | Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file. | `""` |
| `broker.secretConfig` | Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file. | `""` |
| `broker.existingSecretConfig` | Secret with additonal configuration that will be appended to the end of the generated Kafka broker-only nodes configuration file | `""` |
| `broker.heapOpts` | Kafka Java Heap size for broker-only nodes | `-Xmx1024m -Xms1024m` | | `broker.heapOpts` | Kafka Java Heap size for broker-only nodes | `-Xmx1024m -Xms1024m` |
| `broker.command` | Override Kafka container command | `[]` | | `broker.command` | Override Kafka container command | `[]` |
| `broker.args` | Override Kafka container arguments | `[]` | | `broker.args` | Override Kafka container arguments | `[]` |
@ -365,73 +371,73 @@ The command removes all the Kubernetes components associated with the chart and
### Traffic Exposure parameters ### Traffic Exposure parameters
| Name | Description | Value | | Name | Description | Value |
| ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | | ------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- |
| `service.type` | Kubernetes Service type | `ClusterIP` | | `service.type` | Kubernetes Service type | `ClusterIP` |
| `service.ports.client` | Kafka svc port for client connections | `9092` | | `service.ports.client` | Kafka svc port for client connections | `9092` |
| `service.ports.controller` | Kafka svc port for controller connections. It is used if "kraft.enabled: true" | `9093` | | `service.ports.controller` | Kafka svc port for controller connections. It is used if "kraft.enabled: true" | `9093` |
| `service.ports.interbroker` | Kafka svc port for inter-broker connections | `9094` | | `service.ports.interbroker` | Kafka svc port for inter-broker connections | `9094` |
| `service.ports.external` | Kafka svc port for external connections | `9095` | | `service.ports.external` | Kafka svc port for external connections | `9095` |
| `service.extraPorts` | Extra ports to expose in the Kafka service (normally used with the `sidecar` value) | `[]` | | `service.extraPorts` | Extra ports to expose in the Kafka service (normally used with the `sidecar` value) | `[]` |
| `service.nodePorts.client` | Node port for the Kafka client connections | `""` | | `service.nodePorts.client` | Node port for the Kafka client connections | `""` |
| `service.nodePorts.external` | Node port for the Kafka external connections | `""` | | `service.nodePorts.external` | Node port for the Kafka external connections | `""` |
| `service.sessionAffinity` | Control where client requests go, to the same pod or round-robin | `None` | | `service.sessionAffinity` | Control where client requests go, to the same pod or round-robin | `None` |
| `service.sessionAffinityConfig` | Additional settings for the sessionAffinity | `{}` | | `service.sessionAffinityConfig` | Additional settings for the sessionAffinity | `{}` |
| `service.clusterIP` | Kafka service Cluster IP | `""` | | `service.clusterIP` | Kafka service Cluster IP | `""` |
| `service.loadBalancerIP` | Kafka service Load Balancer IP | `""` | | `service.loadBalancerIP` | Kafka service Load Balancer IP | `""` |
| `service.loadBalancerSourceRanges` | Kafka service Load Balancer sources | `[]` | | `service.loadBalancerSourceRanges` | Kafka service Load Balancer sources | `[]` |
| `service.externalTrafficPolicy` | Kafka service external traffic policy | `Cluster` | | `service.externalTrafficPolicy` | Kafka service external traffic policy | `Cluster` |
| `service.annotations` | Additional custom annotations for Kafka service | `{}` | | `service.annotations` | Additional custom annotations for Kafka service | `{}` |
| `service.headless.controller.annotations` | Annotations for the controller-eligible headless service. | `{}` | | `service.headless.controller.annotations` | Annotations for the controller-eligible headless service. | `{}` |
| `service.headless.controller.labels` | Labels for the controller-eligible headless service. | `{}` | | `service.headless.controller.labels` | Labels for the controller-eligible headless service. | `{}` |
| `service.headless.broker.annotations` | Annotations for the broker-only headless service. | `{}` | | `service.headless.broker.annotations` | Annotations for the broker-only headless service. | `{}` |
| `service.headless.broker.labels` | Labels for the broker-only headless service. | `{}` | | `service.headless.broker.labels` | Labels for the broker-only headless service. | `{}` |
| `externalAccess.enabled` | Enable Kubernetes external cluster access to Kafka brokers | `false` | | `externalAccess.enabled` | Enable Kubernetes external cluster access to Kafka brokers | `false` |
| `externalAccess.autoDiscovery.enabled` | Enable using an init container to auto-detect external IPs/ports by querying the K8s API | `false` | | `externalAccess.autoDiscovery.enabled` | Enable using an init container to auto-detect external IPs/ports by querying the K8s API | `false` |
| `externalAccess.autoDiscovery.image.registry` | Init container auto-discovery image registry | `docker.io` | | `externalAccess.autoDiscovery.image.registry` | Init container auto-discovery image registry | `docker.io` |
| `externalAccess.autoDiscovery.image.repository` | Init container auto-discovery image repository | `bitnami/kubectl` | | `externalAccess.autoDiscovery.image.repository` | Init container auto-discovery image repository | `bitnami/kubectl` |
| `externalAccess.autoDiscovery.image.tag` | Init container auto-discovery image tag (immutable tags are recommended) | `1.25.13-debian-11-r5` | | `externalAccess.autoDiscovery.image.tag` | Init container auto-discovery image tag (immutable tags are recommended) | `1.25.13-debian-11-r11` |
| `externalAccess.autoDiscovery.image.digest` | Kubectl image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `externalAccess.autoDiscovery.image.digest` | Kubectl image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `externalAccess.autoDiscovery.image.pullPolicy` | Init container auto-discovery image pull policy | `IfNotPresent` | | `externalAccess.autoDiscovery.image.pullPolicy` | Init container auto-discovery image pull policy | `IfNotPresent` |
| `externalAccess.autoDiscovery.image.pullSecrets` | Init container auto-discovery image pull secrets | `[]` | | `externalAccess.autoDiscovery.image.pullSecrets` | Init container auto-discovery image pull secrets | `[]` |
| `externalAccess.autoDiscovery.resources.limits` | The resources limits for the auto-discovery init container | `{}` | | `externalAccess.autoDiscovery.resources.limits` | The resources limits for the auto-discovery init container | `{}` |
| `externalAccess.autoDiscovery.resources.requests` | The requested resources for the auto-discovery init container | `{}` | | `externalAccess.autoDiscovery.resources.requests` | The requested resources for the auto-discovery init container | `{}` |
| `externalAccess.controller.forceExpose` | If set to true, force exposing controller-eligible nodes although they are configured as controller-only nodes | `false` | | `externalAccess.controller.forceExpose` | If set to true, force exposing controller-eligible nodes although they are configured as controller-only nodes | `false` |
| `externalAccess.controller.service.type` | Kubernetes Service type for external access. It can be NodePort, LoadBalancer or ClusterIP | `LoadBalancer` | | `externalAccess.controller.service.type` | Kubernetes Service type for external access. It can be NodePort, LoadBalancer or ClusterIP | `LoadBalancer` |
| `externalAccess.controller.service.ports.external` | Kafka port used for external access when service type is LoadBalancer | `9094` | | `externalAccess.controller.service.ports.external` | Kafka port used for external access when service type is LoadBalancer | `9094` |
| `externalAccess.controller.service.loadBalancerIPs` | Array of load balancer IPs for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.controller.service.loadBalancerIPs` | Array of load balancer IPs for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.controller.service.loadBalancerNames` | Array of load balancer Names for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.controller.service.loadBalancerNames` | Array of load balancer Names for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.controller.service.loadBalancerAnnotations` | Array of load balancer annotations for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.controller.service.loadBalancerAnnotations` | Array of load balancer annotations for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.controller.service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` | | `externalAccess.controller.service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` |
| `externalAccess.controller.service.nodePorts` | Array of node ports used for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.controller.service.nodePorts` | Array of node ports used for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.controller.service.externalIPs` | Use distinct service host IPs to configure Kafka external listener when service type is NodePort. Length must be the same as replicaCount | `[]` | | `externalAccess.controller.service.externalIPs` | Use distinct service host IPs to configure Kafka external listener when service type is NodePort. Length must be the same as replicaCount | `[]` |
| `externalAccess.controller.service.useHostIPs` | Use service host IPs to configure Kafka external listener when service type is NodePort | `false` | | `externalAccess.controller.service.useHostIPs` | Use service host IPs to configure Kafka external listener when service type is NodePort | `false` |
| `externalAccess.controller.service.usePodIPs` | using the MY_POD_IP address for external access. | `false` | | `externalAccess.controller.service.usePodIPs` | using the MY_POD_IP address for external access. | `false` |
| `externalAccess.controller.service.domain` | Domain or external ip used to configure Kafka external listener when service type is NodePort or ClusterIP | `""` | | `externalAccess.controller.service.domain` | Domain or external ip used to configure Kafka external listener when service type is NodePort or ClusterIP | `""` |
| `externalAccess.controller.service.publishNotReadyAddresses` | Indicates that any agent which deals with endpoints for this Service should disregard any indications of ready/not-ready | `false` | | `externalAccess.controller.service.publishNotReadyAddresses` | Indicates that any agent which deals with endpoints for this Service should disregard any indications of ready/not-ready | `false` |
| `externalAccess.controller.service.labels` | Service labels for external access | `{}` | | `externalAccess.controller.service.labels` | Service labels for external access | `{}` |
| `externalAccess.controller.service.annotations` | Service annotations for external access | `{}` | | `externalAccess.controller.service.annotations` | Service annotations for external access | `{}` |
| `externalAccess.controller.service.extraPorts` | Extra ports to expose in the Kafka external service | `[]` | | `externalAccess.controller.service.extraPorts` | Extra ports to expose in the Kafka external service | `[]` |
| `externalAccess.broker.service.type` | Kubernetes Service type for external access. It can be NodePort, LoadBalancer or ClusterIP | `LoadBalancer` | | `externalAccess.broker.service.type` | Kubernetes Service type for external access. It can be NodePort, LoadBalancer or ClusterIP | `LoadBalancer` |
| `externalAccess.broker.service.ports.external` | Kafka port used for external access when service type is LoadBalancer | `9094` | | `externalAccess.broker.service.ports.external` | Kafka port used for external access when service type is LoadBalancer | `9094` |
| `externalAccess.broker.service.loadBalancerIPs` | Array of load balancer IPs for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.broker.service.loadBalancerIPs` | Array of load balancer IPs for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.broker.service.loadBalancerNames` | Array of load balancer Names for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.broker.service.loadBalancerNames` | Array of load balancer Names for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.broker.service.loadBalancerAnnotations` | Array of load balancer annotations for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.broker.service.loadBalancerAnnotations` | Array of load balancer annotations for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.broker.service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` | | `externalAccess.broker.service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` |
| `externalAccess.broker.service.nodePorts` | Array of node ports used for each Kafka broker. Length must be the same as replicaCount | `[]` | | `externalAccess.broker.service.nodePorts` | Array of node ports used for each Kafka broker. Length must be the same as replicaCount | `[]` |
| `externalAccess.broker.service.externalIPs` | Use distinct service host IPs to configure Kafka external listener when service type is NodePort. Length must be the same as replicaCount | `[]` | | `externalAccess.broker.service.externalIPs` | Use distinct service host IPs to configure Kafka external listener when service type is NodePort. Length must be the same as replicaCount | `[]` |
| `externalAccess.broker.service.useHostIPs` | Use service host IPs to configure Kafka external listener when service type is NodePort | `false` | | `externalAccess.broker.service.useHostIPs` | Use service host IPs to configure Kafka external listener when service type is NodePort | `false` |
| `externalAccess.broker.service.usePodIPs` | using the MY_POD_IP address for external access. | `false` | | `externalAccess.broker.service.usePodIPs` | using the MY_POD_IP address for external access. | `false` |
| `externalAccess.broker.service.domain` | Domain or external ip used to configure Kafka external listener when service type is NodePort or ClusterIP | `""` | | `externalAccess.broker.service.domain` | Domain or external ip used to configure Kafka external listener when service type is NodePort or ClusterIP | `""` |
| `externalAccess.broker.service.publishNotReadyAddresses` | Indicates that any agent which deals with endpoints for this Service should disregard any indications of ready/not-ready | `false` | | `externalAccess.broker.service.publishNotReadyAddresses` | Indicates that any agent which deals with endpoints for this Service should disregard any indications of ready/not-ready | `false` |
| `externalAccess.broker.service.labels` | Service labels for external access | `{}` | | `externalAccess.broker.service.labels` | Service labels for external access | `{}` |
| `externalAccess.broker.service.annotations` | Service annotations for external access | `{}` | | `externalAccess.broker.service.annotations` | Service annotations for external access | `{}` |
| `externalAccess.broker.service.extraPorts` | Extra ports to expose in the Kafka external service | `[]` | | `externalAccess.broker.service.extraPorts` | Extra ports to expose in the Kafka external service | `[]` |
| `networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `false` | | `networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `false` |
| `networkPolicy.allowExternal` | Don't require client label for connections | `true` | | `networkPolicy.allowExternal` | Don't require client label for connections | `true` |
| `networkPolicy.explicitNamespacesSelector` | A Kubernetes LabelSelector to explicitly select namespaces from which traffic could be allowed | `{}` | | `networkPolicy.explicitNamespacesSelector` | A Kubernetes LabelSelector to explicitly select namespaces from which traffic could be allowed | `{}` |
| `networkPolicy.externalAccess.from` | customize the from section for External Access on tcp-external port | `[]` | | `networkPolicy.externalAccess.from` | customize the from section for External Access on tcp-external port | `[]` |
| `networkPolicy.egressRules.customRules` | Custom network policy rule | `{}` | | `networkPolicy.egressRules.customRules` | Custom network policy rule | `{}` |
### Volume Permissions parameters ### Volume Permissions parameters
@ -440,7 +446,7 @@ The command removes all the Kubernetes components associated with the chart and
| `volumePermissions.enabled` | Enable init container that changes the owner and group of the persistent volume | `false` | | `volumePermissions.enabled` | Enable init container that changes the owner and group of the persistent volume | `false` |
| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | | `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` |
| `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/os-shell` | | `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/os-shell` |
| `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `11-debian-11-r51` | | `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `11-debian-11-r60` |
| `volumePermissions.image.digest` | Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `volumePermissions.image.digest` | Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `IfNotPresent` | | `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `IfNotPresent` |
| `volumePermissions.image.pullSecrets` | Init container volume-permissions image pull secrets | `[]` | | `volumePermissions.image.pullSecrets` | Init container volume-permissions image pull secrets | `[]` |
@ -465,7 +471,7 @@ The command removes all the Kubernetes components associated with the chart and
| `metrics.kafka.enabled` | Whether or not to create a standalone Kafka exporter to expose Kafka metrics | `false` | | `metrics.kafka.enabled` | Whether or not to create a standalone Kafka exporter to expose Kafka metrics | `false` |
| `metrics.kafka.image.registry` | Kafka exporter image registry | `docker.io` | | `metrics.kafka.image.registry` | Kafka exporter image registry | `docker.io` |
| `metrics.kafka.image.repository` | Kafka exporter image repository | `bitnami/kafka-exporter` | | `metrics.kafka.image.repository` | Kafka exporter image repository | `bitnami/kafka-exporter` |
| `metrics.kafka.image.tag` | Kafka exporter image tag (immutable tags are recommended) | `1.7.0-debian-11-r93` | | `metrics.kafka.image.tag` | Kafka exporter image tag (immutable tags are recommended) | `1.7.0-debian-11-r102` |
| `metrics.kafka.image.digest` | Kafka exporter image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `metrics.kafka.image.digest` | Kafka exporter image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `metrics.kafka.image.pullPolicy` | Kafka exporter image pull policy | `IfNotPresent` | | `metrics.kafka.image.pullPolicy` | Kafka exporter image pull policy | `IfNotPresent` |
| `metrics.kafka.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | | `metrics.kafka.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |
@ -519,7 +525,7 @@ The command removes all the Kubernetes components associated with the chart and
| `metrics.jmx.kafkaJmxPort` | JMX port where the exporter will collect metrics, exposed in the Kafka container. | `5555` | | `metrics.jmx.kafkaJmxPort` | JMX port where the exporter will collect metrics, exposed in the Kafka container. | `5555` |
| `metrics.jmx.image.registry` | JMX exporter image registry | `docker.io` | | `metrics.jmx.image.registry` | JMX exporter image registry | `docker.io` |
| `metrics.jmx.image.repository` | JMX exporter image repository | `bitnami/jmx-exporter` | | `metrics.jmx.image.repository` | JMX exporter image repository | `bitnami/jmx-exporter` |
| `metrics.jmx.image.tag` | JMX exporter image tag (immutable tags are recommended) | `0.19.0-debian-11-r57` | | `metrics.jmx.image.tag` | JMX exporter image tag (immutable tags are recommended) | `0.19.0-debian-11-r66` |
| `metrics.jmx.image.digest` | JMX exporter image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `metrics.jmx.image.digest` | JMX exporter image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `metrics.jmx.image.pullPolicy` | JMX exporter image pull policy | `IfNotPresent` | | `metrics.jmx.image.pullPolicy` | JMX exporter image pull policy | `IfNotPresent` |
| `metrics.jmx.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | | `metrics.jmx.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |

View File

@ -2,7 +2,7 @@ annotations:
category: Infrastructure category: Infrastructure
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 2.9.1 appVersion: 2.9.2
description: A Library Helm Chart for grouping common logic between bitnami charts. description: A Library Helm Chart for grouping common logic between bitnami charts.
This chart is not deployable by itself. This chart is not deployable by itself.
home: https://bitnami.com home: https://bitnami.com
@ -20,4 +20,4 @@ name: common
sources: sources:
- https://github.com/bitnami/charts - https://github.com/bitnami/charts
type: library type: library
version: 2.9.1 version: 2.10.0

View File

@ -11,17 +11,28 @@ Usage:
{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} {{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }}
*/}} */}}
{{- define "common.tplvalues.render" -}} {{- define "common.tplvalues.render" -}}
{{- if .scope }} {{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }}
{{- if typeIs "string" .value }} {{- if contains "{{" (toJson .value) }}
{{- tpl (cat "{{- with $.RelativeScope -}}" .value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- if .scope }}
{{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }}
{{- else }} {{- else }}
{{- tpl (cat "{{- with $.RelativeScope -}}" (.value | toYaml) "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- tpl $value .context }}
{{- end }} {{- end }}
{{- else }} {{- else }}
{{- if typeIs "string" .value }} {{- $value }}
{{- tpl .value .context }} {{- end }}
{{- else }}
{{- tpl (.value | toYaml) .context }}
{{- end }}
{{- end -}} {{- end -}}
{{/*
Merge a list of values that contains template after rendering them.
Merge precedence is consistent with http://masterminds.github.io/sprig/dicts.html#merge-mustmerge
Usage:
{{ include "common.tplvalues.merge" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }}
*/}}
{{- define "common.tplvalues.merge" -}}
{{- $dst := dict -}}
{{- range .values -}}
{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | merge $dst -}}
{{- end -}}
{{ $dst | toYaml }}
{{- end -}} {{- end -}}

View File

@ -1,6 +1,6 @@
dependencies: dependencies:
- name: common - name: common
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 2.9.0 version: 2.9.2
digest: sha256:416ad278a896f0e9b51d5305bef5d875c7cca6fbb64b75e1f131b04763e2aff9 digest: sha256:0d1ed3ab5c6a7e3ab3bfaea47851d574aae674797326572c51719718026e1f63
generated: "2023-08-22T14:36:38.84686+02:00" generated: "2023-08-31T16:47:39.182152921Z"

View File

@ -2,9 +2,9 @@ annotations:
category: Infrastructure category: Infrastructure
images: | images: |
- name: os-shell - name: os-shell
image: docker.io/bitnami/os-shell:11-debian-11-r43 image: docker.io/bitnami/os-shell:11-debian-11-r51
- name: zookeeper - name: zookeeper
image: docker.io/bitnami/zookeeper:3.9.0-debian-11-r1 image: docker.io/bitnami/zookeeper:3.9.0-debian-11-r11
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 3.9.0 appVersion: 3.9.0
@ -26,4 +26,4 @@ maintainers:
name: zookeeper name: zookeeper
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/zookeeper - https://github.com/bitnami/charts/tree/main/bitnami/zookeeper
version: 12.1.1 version: 12.1.2

View File

@ -82,7 +82,7 @@ The command removes all the Kubernetes components associated with the chart and
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ----------------------- | | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ----------------------- |
| `image.registry` | ZooKeeper image registry | `docker.io` | | `image.registry` | ZooKeeper image registry | `docker.io` |
| `image.repository` | ZooKeeper image repository | `bitnami/zookeeper` | | `image.repository` | ZooKeeper image repository | `bitnami/zookeeper` |
| `image.tag` | ZooKeeper image tag (immutable tags are recommended) | `3.9.0-debian-11-r1` | | `image.tag` | ZooKeeper image tag (immutable tags are recommended) | `3.9.0-debian-11-r11` |
| `image.digest` | ZooKeeper image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `image.digest` | ZooKeeper image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `image.pullPolicy` | ZooKeeper image pull policy | `IfNotPresent` | | `image.pullPolicy` | ZooKeeper image pull policy | `IfNotPresent` |
| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | | `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` |
@ -248,7 +248,7 @@ The command removes all the Kubernetes components associated with the chart and
| `volumePermissions.enabled` | Enable init container that changes the owner and group of the persistent volume | `false` | | `volumePermissions.enabled` | Enable init container that changes the owner and group of the persistent volume | `false` |
| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | | `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` |
| `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/os-shell` | | `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/os-shell` |
| `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `11-debian-11-r43` | | `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `11-debian-11-r51` |
| `volumePermissions.image.digest` | Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | | `volumePermissions.image.digest` | Init container volume-permissions image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` |
| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `IfNotPresent` | | `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `IfNotPresent` |
| `volumePermissions.image.pullSecrets` | Init container volume-permissions image pull secrets | `[]` | | `volumePermissions.image.pullSecrets` | Init container volume-permissions image pull secrets | `[]` |

View File

@ -2,7 +2,7 @@ annotations:
category: Infrastructure category: Infrastructure
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 2.9.0 appVersion: 2.9.2
description: A Library Helm Chart for grouping common logic between bitnami charts. description: A Library Helm Chart for grouping common logic between bitnami charts.
This chart is not deployable by itself. This chart is not deployable by itself.
home: https://bitnami.com home: https://bitnami.com
@ -20,4 +20,4 @@ name: common
sources: sources:
- https://github.com/bitnami/charts - https://github.com/bitnami/charts
type: library type: library
version: 2.9.0 version: 2.9.2

View File

@ -60,12 +60,13 @@ Return a topologyKey definition
{{/* {{/*
Return a soft podAffinity/podAntiAffinity definition Return a soft podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.soft" -}} {{- define "common.affinities.pods.soft" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
preferredDuringSchedulingIgnoredDuringExecution: preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm: - podAffinityTerm:
labelSelector: labelSelector:
@ -78,16 +79,30 @@ preferredDuringSchedulingIgnoredDuringExecution:
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: 1 weight: 1
{{- range $extraPodAffinityTerms }}
- podAffinityTerm:
labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 10 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: {{ .weight | default 1 -}}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*
Return a hard podAffinity/podAntiAffinity definition Return a hard podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.hard" -}} {{- define "common.affinities.pods.hard" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector: - labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }} matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }}
@ -98,6 +113,17 @@ requiredDuringSchedulingIgnoredDuringExecution:
{{ $key }}: {{ $value | quote }} {{ $key }}: {{ $value | quote }}
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- range $extraPodAffinityTerms }}
- labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 8 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*

View File

@ -11,17 +11,14 @@ Usage:
{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} {{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }}
*/}} */}}
{{- define "common.tplvalues.render" -}} {{- define "common.tplvalues.render" -}}
{{- if .scope }} {{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }}
{{- if typeIs "string" .value }} {{- if contains "{{" (toJson .value) }}
{{- tpl (cat "{{- with $.RelativeScope -}}" .value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- if .scope }}
{{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }}
{{- else }} {{- else }}
{{- tpl (cat "{{- with $.RelativeScope -}}" (.value | toYaml) "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- tpl $value .context }}
{{- end }} {{- end }}
{{- else }} {{- else }}
{{- if typeIs "string" .value }} {{- $value }}
{{- tpl .value .context }} {{- end }}
{{- else }}
{{- tpl (.value | toYaml) .context }}
{{- end }}
{{- end -}}
{{- end -}} {{- end -}}

View File

@ -79,7 +79,7 @@ diagnosticMode:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/zookeeper repository: bitnami/zookeeper
tag: 3.9.0-debian-11-r1 tag: 3.9.0-debian-11-r11
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
@ -663,7 +663,7 @@ volumePermissions:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/os-shell repository: bitnami/os-shell
tag: 11-debian-11-r43 tag: 11-debian-11-r51
digest: "" digest: ""
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets. ## Optionally specify an array of imagePullSecrets.

View File

@ -285,6 +285,31 @@ Return the Kafka controller-eligible configuration configmap
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return the Kafka controller-eligible secret configuration
*/}}
{{- define "kafka.controller.secretConfigName" -}}
{{- if .Values.controller.existingSecretConfig -}}
{{- include "common.tplvalues.render" (dict "value" .Values.controller.existingSecretConfig "context" $) -}}
{{- else if .Values.existingSecretConfig -}}
{{- include "common.tplvalues.render" (dict "value" .Values.existingSecretConfig "context" $) -}}
{{- else -}}
{{- printf "%s-controller-secret-configuration" (include "common.names.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/*
Return the Kafka controller-eligible secret configuration values
*/}}
{{- define "kafka.controller.secretConfig" -}}
{{- if .Values.secretConfig }}
{{- include "common.tplvalues.render" ( dict "value" .Values.secretConfig "context" $ ) }}
{{- end }}
{{- if .Values.controller.secretConfig }}
{{- include "common.tplvalues.render" ( dict "value" .Values.controller.secretConfig "context" $ ) }}
{{- end }}
{{- end -}}
{{/* {{/*
Return true if a configmap object should be created for controller-eligible pods Return true if a configmap object should be created for controller-eligible pods
*/}} */}}
@ -294,6 +319,23 @@ Return true if a configmap object should be created for controller-eligible pods
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return true if a secret object with config should be created for controller-eligible pods
*/}}
{{- define "kafka.controller.createSecretConfig" -}}
{{- if and (or .Values.controller.secretConfig .Values.secretConfig) (and (not .Values.controller.existingSecretConfig) (not .Values.existingSecretConfig)) }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/*
Return true if a secret object with config exists for controller-eligible pods
*/}}
{{- define "kafka.controller.secretConfigExists" -}}
{{- if or .Values.controller.secretConfig .Values.secretConfig .Values.controller.existingSecretConfig .Values.existingSecretConfig }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/* {{/*
Return the Kafka broker configuration configmap Return the Kafka broker configuration configmap
*/}} */}}
@ -307,6 +349,31 @@ Return the Kafka broker configuration configmap
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return the Kafka broker secret configuration
*/}}
{{- define "kafka.broker.secretConfigName" -}}
{{- if .Values.broker.existingSecretConfig -}}
{{- include "common.tplvalues.render" (dict "value" .Values.broker.existingSecretConfig "context" $) -}}
{{- else if .Values.existingSecretConfig -}}
{{- include "common.tplvalues.render" (dict "value" .Values.existingSecretConfig "context" $) -}}
{{- else -}}
{{- printf "%s-broker-secret-configuration" (include "common.names.fullname" .) -}}
{{- end -}}
{{- end -}}
{{/*
Return the Kafka broker secret configuration values
*/}}
{{- define "kafka.broker.secretConfig" -}}
{{- if .Values.secretConfig }}
{{- include "common.tplvalues.render" ( dict "value" .Values.secretConfig "context" $ ) }}
{{- end }}
{{- if .Values.broker.secretConfig }}
{{- include "common.tplvalues.render" ( dict "value" .Values.broker.secretConfig "context" $ ) }}
{{- end }}
{{- end -}}
{{/* {{/*
Return true if a configmap object should be created for broker pods Return true if a configmap object should be created for broker pods
*/}} */}}
@ -316,6 +383,24 @@ Return true if a configmap object should be created for broker pods
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{/*
Return true if a secret object with config should be created for broker pods
*/}}
{{- define "kafka.broker.createSecretConfig" -}}
{{- if and (or .Values.broker.secretConfig .Values.secretConfig) (and (not .Values.broker.existingSecretConfig) (not .Values.existingSecretConfig)) }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/*
Return true if a secret object with config exists for broker pods
*/}}
{{- define "kafka.broker.secretConfigExists" -}}
{{- if or .Values.broker.secretConfig .Values.secretConfig .Values.broker.existingSecretConfig .Values.existingSecretConfig }}
{{- true -}}
{{- end -}}
{{- end -}}
{{/* {{/*
Return the Kafka log4j ConfigMap name. Return the Kafka log4j ConfigMap name.
*/}} */}}
@ -747,6 +832,8 @@ Init container definition for Kafka initialization
mountPath: /config mountPath: /config
- name: kafka-configmaps - name: kafka-configmaps
mountPath: /configmaps mountPath: /configmaps
- name: kafka-secret-config
mountPath: /secret-config
- name: scripts - name: scripts
mountPath: /scripts mountPath: /scripts
- name: tmp - name: tmp

View File

@ -0,0 +1,25 @@
{{- /*
Copyright VMware, Inc.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- $replicaCount := int .Values.broker.replicaCount }}
{{- if and (include "kafka.broker.createSecretConfig" .) (gt $replicaCount 0) }}
{{- $secretName := printf "%s-broker-secret-configuration" (include "common.names.fullname" .) }}
apiVersion: v1
kind: Secret
metadata:
name: {{ $secretName }}
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" . | nindent 4 }}
{{- if .Values.commonLabels }}
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- end }}
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
type: Opaque
data:
server-secret.properties: {{ include "kafka.broker.secretConfig" . | b64enc }}
{{- end }}

View File

@ -8,7 +8,7 @@ SPDX-License-Identifier: APACHE-2.0
apiVersion: {{ include "common.capabilities.policy.apiVersion" . }} apiVersion: {{ include "common.capabilities.policy.apiVersion" . }}
kind: PodDisruptionBudget kind: PodDisruptionBudget
metadata: metadata:
name: {{ include "common.names.fullname" . }} name: {{ printf "%s-broker" (include "common.names.fullname" .) }}
namespace: {{ include "common.names.namespace" . | quote }} namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: broker app.kubernetes.io/component: broker
@ -23,7 +23,7 @@ spec:
{{- if .Values.broker.pdb.maxUnavailable }} {{- if .Values.broker.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.broker.pdb.maxUnavailable }} maxUnavailable: {{ .Values.broker.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.broker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.broker.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: broker app.kubernetes.io/component: broker

View File

@ -19,7 +19,7 @@ metadata:
spec: spec:
podManagementPolicy: {{ .Values.broker.podManagementPolicy }} podManagementPolicy: {{ .Values.broker.podManagementPolicy }}
replicas: {{ .Values.broker.replicaCount }} replicas: {{ .Values.broker.replicaCount }}
{{- $podLabels := merge .Values.broker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.broker.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: broker app.kubernetes.io/component: broker
@ -335,6 +335,13 @@ spec:
- name: kafka-configmaps - name: kafka-configmaps
configMap: configMap:
name: {{ include "kafka.broker.configmapName" . }} name: {{ include "kafka.broker.configmapName" . }}
- name: kafka-secret-config
{{- if (include "kafka.broker.secretConfigExists" .) }}
secret:
secretName: {{ include "kafka.broker.secretConfigName" . }}
{{- else }}
emptyDir: {}
{{- end }}
- name: kafka-config - name: kafka-config
emptyDir: {} emptyDir: {}
- name: tmp - name: tmp

View File

@ -13,7 +13,7 @@ kind: Service
metadata: metadata:
name: {{ printf "%s-%d-external" (include "common.names.fullname" $) $i | trunc 63 | trimSuffix "-" }} name: {{ printf "%s-%d-external" (include "common.names.fullname" $) $i | trunc 63 | trimSuffix "-" }}
namespace: {{ include "common.names.namespace" $ | quote }} namespace: {{ include "common.names.namespace" $ | quote }}
{{- $labels := merge $.Values.externalAccess.broker.service.labels $.Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list $.Values.externalAccess.broker.service.labels $.Values.commonLabels ) "context" $ ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: kafka app.kubernetes.io/component: kafka
pod: {{ $targetPod }} pod: {{ $targetPod }}
@ -23,7 +23,7 @@ metadata:
{{ include "common.tplvalues.render" ( dict "value" (index $.Values.externalAccess.broker.service.loadBalancerAnnotations $i) "context" $) | nindent 4 }} {{ include "common.tplvalues.render" ( dict "value" (index $.Values.externalAccess.broker.service.loadBalancerAnnotations $i) "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- if or $.Values.externalAccess.broker.service.annotations $.Values.commonAnnotations }} {{- if or $.Values.externalAccess.broker.service.annotations $.Values.commonAnnotations }}
{{- $annotations := merge $.Values.externalAccess.broker.service.annotations $.Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list $.Values.externalAccess.broker.service.annotations $.Values.commonAnnotations ) "context" $ ) }}
{{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- end }} {{- end }}
@ -53,7 +53,7 @@ spec:
{{- if and (eq $.Values.externalAccess.broker.service.type "NodePort") (le (add $i 1) (len $.Values.externalAccess.broker.service.externalIPs)) }} {{- if and (eq $.Values.externalAccess.broker.service.type "NodePort") (le (add $i 1) (len $.Values.externalAccess.broker.service.externalIPs)) }}
externalIPs: [{{ index $.Values.externalAccess.broker.service.externalIPs $i | quote }}] externalIPs: [{{ index $.Values.externalAccess.broker.service.externalIPs $i | quote }}]
{{- end }} {{- end }}
{{- $podLabels := merge $.Values.broker.podLabels $.Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list $.Values.broker.podLabels $.Values.commonLabels ) "context" $ ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka
app.kubernetes.io/component: broker app.kubernetes.io/component: broker

View File

@ -10,12 +10,12 @@ kind: Service
metadata: metadata:
name: {{ printf "%s-broker-headless" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }} name: {{ printf "%s-broker-headless" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }}
namespace: {{ include "common.names.namespace" . | quote }} namespace: {{ include "common.names.namespace" . | quote }}
{{- $labels := merge .Values.externalAccess.broker.service.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.externalAccess.broker.service.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: broker app.kubernetes.io/component: broker
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka
{{- if or .Values.service.headless.broker.annotations .Values.commonAnnotations }} {{- if or .Values.service.headless.broker.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.service.headless.broker.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.headless.broker.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
@ -31,7 +31,7 @@ spec:
port: {{ .Values.service.ports.client }} port: {{ .Values.service.ports.client }}
protocol: TCP protocol: TCP
targetPort: client targetPort: client
{{- $podLabels := merge .Values.broker.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.broker.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: broker app.kubernetes.io/component: broker
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka

View File

@ -0,0 +1,25 @@
{{- /*
Copyright VMware, Inc.
SPDX-License-Identifier: APACHE-2.0
*/}}
{{- $replicaCount := int .Values.controller.replicaCount }}
{{- if and (include "kafka.controller.createSecretConfig" .) (gt $replicaCount 0) }}
{{- $secretName := printf "%s-controller-secret-configuration" (include "common.names.fullname" .) }}
apiVersion: v1
kind: Secret
metadata:
name: {{ $secretName }}
namespace: {{ include "common.names.namespace" . | quote }}
labels: {{- include "common.labels.standard" . | nindent 4 }}
{{- if .Values.commonLabels }}
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- end }}
{{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }}
type: Opaque
data:
server-secret.properties: {{ include "kafka.controller.secretConfig" . | b64enc }}
{{- end }}

View File

@ -23,9 +23,9 @@ spec:
{{- if .Values.controller.pdb.maxUnavailable }} {{- if .Values.controller.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.controller.pdb.maxUnavailable }} maxUnavailable: {{ .Values.controller.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.controller.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.controller.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: controller-only app.kubernetes.io/component: controller-eligible
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka
{{- end }} {{- end }}

View File

@ -19,7 +19,7 @@ metadata:
spec: spec:
podManagementPolicy: {{ .Values.controller.podManagementPolicy }} podManagementPolicy: {{ .Values.controller.podManagementPolicy }}
replicas: {{ .Values.controller.replicaCount }} replicas: {{ .Values.controller.replicaCount }}
{{- $podLabels := merge .Values.controller.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.controller.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: controller-eligible app.kubernetes.io/component: controller-eligible
@ -328,6 +328,13 @@ spec:
- name: kafka-configmaps - name: kafka-configmaps
configMap: configMap:
name: {{ include "kafka.controller.configmapName" . }} name: {{ include "kafka.controller.configmapName" . }}
- name: kafka-secret-config
{{- if (include "kafka.controller.secretConfigExists" .) }}
secret:
secretName: {{ include "kafka.controller.secretConfigName" . }}
{{- else }}
emptyDir: {}
{{- end }}
- name: kafka-config - name: kafka-config
emptyDir: {} emptyDir: {}
- name: tmp - name: tmp

View File

@ -14,7 +14,7 @@ kind: Service
metadata: metadata:
name: {{ printf "%s-controller-%d-external" $fullname $i | trunc 63 | trimSuffix "-" }} name: {{ printf "%s-controller-%d-external" $fullname $i | trunc 63 | trimSuffix "-" }}
namespace: {{ include "common.names.namespace" $ | quote }} namespace: {{ include "common.names.namespace" $ | quote }}
{{- $labels := merge $.Values.externalAccess.controller.service.labels $.Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list $.Values.externalAccess.controller.service.labels $.Values.commonLabels ) "context" $ ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: kafka app.kubernetes.io/component: kafka
pod: {{ $targetPod }} pod: {{ $targetPod }}
@ -24,7 +24,7 @@ metadata:
{{ include "common.tplvalues.render" ( dict "value" (index $.Values.externalAccess.controller.service.loadBalancerAnnotations $i) "context" $) | nindent 4 }} {{ include "common.tplvalues.render" ( dict "value" (index $.Values.externalAccess.controller.service.loadBalancerAnnotations $i) "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- if or $.Values.externalAccess.controller.service.annotations $.Values.commonAnnotations }} {{- if or $.Values.externalAccess.controller.service.annotations $.Values.commonAnnotations }}
{{- $annotations := merge $.Values.externalAccess.controller.service.annotations $.Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list $.Values.externalAccess.controller.service.annotations $.Values.commonAnnotations ) "context" $ ) }}
{{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- end }} {{- end }}
@ -54,7 +54,7 @@ spec:
{{- if and (eq $.Values.externalAccess.controller.service.type "NodePort") (le (add $i 1) (len $.Values.externalAccess.controller.service.externalIPs)) }} {{- if and (eq $.Values.externalAccess.controller.service.type "NodePort") (le (add $i 1) (len $.Values.externalAccess.controller.service.externalIPs)) }}
externalIPs: [{{ index $.Values.externalAccess.controller.service.externalIPs $i | quote }}] externalIPs: [{{ index $.Values.externalAccess.controller.service.externalIPs $i | quote }}]
{{- end }} {{- end }}
{{- $podLabels := merge $.Values.controller.podLabels $.Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list $.Values.controller.podLabels $.Values.commonLabels ) "context" $ ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka
app.kubernetes.io/component: controller-eligible app.kubernetes.io/component: controller-eligible

View File

@ -10,12 +10,12 @@ kind: Service
metadata: metadata:
name: {{ printf "%s-controller-headless" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }} name: {{ printf "%s-controller-headless" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }}
namespace: {{ include "common.names.namespace" . | quote }} namespace: {{ include "common.names.namespace" . | quote }}
{{- $labels := merge .Values.service.headless.controller.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.headless.controller.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: controller-eligible app.kubernetes.io/component: controller-eligible
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka
{{- if or .Values.service.headless.controller.annotations .Values.commonAnnotations }} {{- if or .Values.service.headless.controller.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.service.headless.controller.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.headless.controller.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
@ -39,7 +39,7 @@ spec:
port: {{ .Values.service.ports.controller }} port: {{ .Values.service.ports.controller }}
targetPort: controller targetPort: controller
{{- end }} {{- end }}
{{- $podLabels := merge .Values.controller.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.controller.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: controller-eligible app.kubernetes.io/component: controller-eligible
app.kubernetes.io/part-of: kafka app.kubernetes.io/part-of: kafka

View File

@ -20,7 +20,7 @@ metadata:
{{- end }} {{- end }}
spec: spec:
replicas: 1 replicas: 1
{{- $podLabels := merge .Values.metrics.kafka.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.kafka.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: cluster-metrics app.kubernetes.io/component: cluster-metrics

View File

@ -9,7 +9,7 @@ kind: ServiceMonitor
metadata: metadata:
name: {{ printf "%s-jmx-metrics" (include "common.names.fullname" .) }} name: {{ printf "%s-jmx-metrics" (include "common.names.fullname" .) }}
namespace: {{ default (include "common.names.namespace" .) .Values.metrics.serviceMonitor.namespace | quote }} namespace: {{ default (include "common.names.namespace" .) .Values.metrics.serviceMonitor.namespace | quote }}
{{- $labels := merge .Values.metrics.serviceMonitor.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- if .Values.commonAnnotations }} {{- if .Values.commonAnnotations }}

View File

@ -12,7 +12,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- if or .Values.metrics.jmx.service.annotations .Values.commonAnnotations }} {{- if or .Values.metrics.jmx.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.metrics.jmx.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.jmx.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:

View File

@ -9,7 +9,7 @@ kind: PrometheusRule
metadata: metadata:
name: {{ include "common.names.fullname" . }} name: {{ include "common.names.fullname" . }}
namespace: {{ default (include "common.names.namespace" .) .Values.metrics.prometheusRule.namespace }} namespace: {{ default (include "common.names.namespace" .) .Values.metrics.prometheusRule.namespace }}
{{- $labels := merge .Values.metrics.prometheusRule.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.prometheusRule.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: metrics app.kubernetes.io/component: metrics
{{- if .Values.commonAnnotations }} {{- if .Values.commonAnnotations }}

View File

@ -9,7 +9,7 @@ kind: ServiceMonitor
metadata: metadata:
name: {{ printf "%s-metrics" (include "common.names.fullname" .) }} name: {{ printf "%s-metrics" (include "common.names.fullname" .) }}
namespace: {{ default (include "common.names.namespace" .) .Values.metrics.serviceMonitor.namespace | quote }} namespace: {{ default (include "common.names.namespace" .) .Values.metrics.serviceMonitor.namespace | quote }}
{{- $labels := merge .Values.metrics.serviceMonitor.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: cluster-metrics app.kubernetes.io/component: cluster-metrics
{{- if .Values.commonAnnotations }} {{- if .Values.commonAnnotations }}

View File

@ -12,7 +12,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: cluster-metrics app.kubernetes.io/component: cluster-metrics
{{- if or .Values.metrics.kafka.service.annotations .Values.commonAnnotations }} {{- if or .Values.metrics.kafka.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.metrics.kafka.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.kafka.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
@ -26,7 +26,7 @@ spec:
port: {{ .Values.metrics.kafka.service.ports.metrics }} port: {{ .Values.metrics.kafka.service.ports.metrics }}
protocol: TCP protocol: TCP
targetPort: metrics targetPort: metrics
{{- $podLabels := merge .Values.metrics.kafka.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.kafka.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: cluster-metrics app.kubernetes.io/component: cluster-metrics
{{- end }} {{- end }}

View File

@ -20,7 +20,7 @@ metadata:
spec: spec:
template: template:
metadata: metadata:
{{- $podLabels := merge .Values.provisioning.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.provisioning.podLabels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }}
app.kubernetes.io/component: kafka-provisioning app.kubernetes.io/component: kafka-provisioning
{{- if .Values.provisioning.podAnnotations }} {{- if .Values.provisioning.podAnnotations }}

View File

@ -12,7 +12,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: kafka app.kubernetes.io/component: kafka
{{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.serviceAccount.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}

View File

@ -140,6 +140,13 @@ data:
sed -i "s/$placeholder/$password/g" "$KAFKA_CONFIG_FILE" sed -i "s/$placeholder/$password/g" "$KAFKA_CONFIG_FILE"
} }
append_file_to_kafka_conf() {
local file="${1:?missing source file}"
local conf="${2:?missing kafka conf file}"
cat "$1" >> "$2"
}
configure_external_access() { configure_external_access() {
# Configure external hostname # Configure external hostname
if [[ -f "/shared/external-host.txt" ]]; then if [[ -f "/shared/external-host.txt" ]]; then
@ -353,5 +360,8 @@ data:
{{- if and .Values.tls.zookeeper.enabled .Values.tls.zookeeper.existingSecret }} {{- if and .Values.tls.zookeeper.enabled .Values.tls.zookeeper.existingSecret }}
configure_zookeeper_tls configure_zookeeper_tls
{{- end }} {{- end }}
if [ -f /secret-config/server-secret.properties ]; then
append_file_to_kafka_conf /secret-config/server-secret.properties $KAFKA_CONFIG_FILE
fi
{{- include "common.tplvalues.render" ( dict "value" .Values.extraInit "context" $ ) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" .Values.extraInit "context" $ ) | nindent 4 }}

View File

@ -11,7 +11,7 @@ metadata:
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: kafka app.kubernetes.io/component: kafka
{{- if or .Values.service.annotations .Values.commonAnnotations }} {{- if or .Values.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:

View File

@ -80,7 +80,7 @@ diagnosticMode:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/kafka repository: bitnami/kafka
tag: 3.5.1-debian-11-r35 tag: 3.5.1-debian-11-r41
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
@ -111,6 +111,15 @@ existingConfigmap: ""
## @param extraConfig Additional configuration to be appended at the end of the generated Kafka configuration file. ## @param extraConfig Additional configuration to be appended at the end of the generated Kafka configuration file.
## ##
extraConfig: "" extraConfig: ""
## @param secretConfig Additional configuration to be appended at the end of the generated Kafka configuration file.
## This value will be stored in a secret.
##
secretConfig: ""
## @param existingSecretConfig Secret with additonal configuration that will be appended to the end of the generated Kafka configuration file
## The key for the configuration should be: server-secret.properties
## NOTE: This will override secretConfig value
##
existingSecretConfig: ""
## @param log4j An optional log4j.properties file to overwrite the default of the Kafka brokers ## @param log4j An optional log4j.properties file to overwrite the default of the Kafka brokers
## An optional log4j.properties file to overwrite the default of the Kafka brokers ## An optional log4j.properties file to overwrite the default of the Kafka brokers
## ref: https://github.com/apache/kafka/blob/trunk/config/log4j.properties ## ref: https://github.com/apache/kafka/blob/trunk/config/log4j.properties
@ -436,6 +445,15 @@ controller:
## @param controller.extraConfig Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file. ## @param controller.extraConfig Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file.
## ##
extraConfig: "" extraConfig: ""
## @param controller.secretConfig Additional configuration to be appended at the end of the generated Kafka controller-eligible nodes configuration file.
## This value will be stored in a secret.
##
secretConfig: ""
## @param controller.existingSecretConfig Secret with additonal configuration that will be appended to the end of the generated Kafka controller-eligible nodes configuration file
## The key for the configuration should be: server-secret.properties
## NOTE: This will override controller.secretConfig value
##
existingSecretConfig: ""
## @param controller.heapOpts Kafka Java Heap size for controller-eligible nodes ## @param controller.heapOpts Kafka Java Heap size for controller-eligible nodes
## ##
heapOpts: -Xmx1024m -Xms1024m heapOpts: -Xmx1024m -Xms1024m
@ -806,6 +824,15 @@ broker:
## @param broker.extraConfig Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file. ## @param broker.extraConfig Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file.
## ##
extraConfig: "" extraConfig: ""
## @param broker.secretConfig Additional configuration to be appended at the end of the generated Kafka broker-only nodes configuration file.
## This value will be stored in a secret.
##
secretConfig: ""
## @param broker.existingSecretConfig Secret with additonal configuration that will be appended to the end of the generated Kafka broker-only nodes configuration file
## The key for the configuration should be: server-secret.properties
## NOTE: This will override broker.secretConfig value
##
existingSecretConfig: ""
## @param broker.heapOpts Kafka Java Heap size for broker-only nodes ## @param broker.heapOpts Kafka Java Heap size for broker-only nodes
## ##
heapOpts: -Xmx1024m -Xms1024m heapOpts: -Xmx1024m -Xms1024m
@ -1255,7 +1282,7 @@ externalAccess:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/kubectl repository: bitnami/kubectl
tag: 1.25.13-debian-11-r5 tag: 1.25.13-debian-11-r11
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
@ -1505,7 +1532,7 @@ volumePermissions:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/os-shell repository: bitnami/os-shell
tag: 11-debian-11-r51 tag: 11-debian-11-r60
digest: "" digest: ""
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets. ## Optionally specify an array of imagePullSecrets.
@ -1587,7 +1614,7 @@ metrics:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/kafka-exporter repository: bitnami/kafka-exporter
tag: 1.7.0-debian-11-r93 tag: 1.7.0-debian-11-r102
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
@ -1841,7 +1868,7 @@ metrics:
image: image:
registry: docker.io registry: docker.io
repository: bitnami/jmx-exporter repository: bitnami/jmx-exporter
tag: 0.19.0-debian-11-r57 tag: 0.19.0-debian-11-r66
digest: "" digest: ""
## Specify a imagePullPolicy ## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent' ## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'

View File

@ -1,6 +1,6 @@
dependencies: dependencies:
- name: common - name: common
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 2.9.0 version: 2.10.0
digest: sha256:416ad278a896f0e9b51d5305bef5d875c7cca6fbb64b75e1f131b04763e2aff9 digest: sha256:023ded170632d04528f30332370f34fc8fb96efb2886a01d934cb3bd6e6d2e09
generated: "2023-08-22T14:14:34.796011+02:00" generated: "2023-09-05T11:34:05.709018+02:00"

View File

@ -37,4 +37,4 @@ maintainers:
name: mariadb name: mariadb
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/mariadb - https://github.com/bitnami/charts/tree/main/bitnami/mariadb
version: 13.1.2 version: 13.1.3

View File

@ -2,7 +2,7 @@ annotations:
category: Infrastructure category: Infrastructure
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 2.9.0 appVersion: 2.9.2
description: A Library Helm Chart for grouping common logic between bitnami charts. description: A Library Helm Chart for grouping common logic between bitnami charts.
This chart is not deployable by itself. This chart is not deployable by itself.
home: https://bitnami.com home: https://bitnami.com
@ -20,4 +20,4 @@ name: common
sources: sources:
- https://github.com/bitnami/charts - https://github.com/bitnami/charts
type: library type: library
version: 2.9.0 version: 2.10.0

View File

@ -60,12 +60,13 @@ Return a topologyKey definition
{{/* {{/*
Return a soft podAffinity/podAntiAffinity definition Return a soft podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.soft" -}} {{- define "common.affinities.pods.soft" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
preferredDuringSchedulingIgnoredDuringExecution: preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm: - podAffinityTerm:
labelSelector: labelSelector:
@ -78,16 +79,30 @@ preferredDuringSchedulingIgnoredDuringExecution:
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: 1 weight: 1
{{- range $extraPodAffinityTerms }}
- podAffinityTerm:
labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 10 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: {{ .weight | default 1 -}}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*
Return a hard podAffinity/podAntiAffinity definition Return a hard podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.hard" -}} {{- define "common.affinities.pods.hard" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector: - labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }} matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }}
@ -98,6 +113,17 @@ requiredDuringSchedulingIgnoredDuringExecution:
{{ $key }}: {{ $value | quote }} {{ $key }}: {{ $value | quote }}
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- range $extraPodAffinityTerms }}
- labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 8 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*

View File

@ -11,17 +11,28 @@ Usage:
{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} {{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }}
*/}} */}}
{{- define "common.tplvalues.render" -}} {{- define "common.tplvalues.render" -}}
{{- if .scope }} {{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }}
{{- if typeIs "string" .value }} {{- if contains "{{" (toJson .value) }}
{{- tpl (cat "{{- with $.RelativeScope -}}" .value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- if .scope }}
{{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }}
{{- else }} {{- else }}
{{- tpl (cat "{{- with $.RelativeScope -}}" (.value | toYaml) "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- tpl $value .context }}
{{- end }} {{- end }}
{{- else }} {{- else }}
{{- if typeIs "string" .value }} {{- $value }}
{{- tpl .value .context }} {{- end }}
{{- else }}
{{- tpl (.value | toYaml) .context }}
{{- end }}
{{- end -}} {{- end -}}
{{/*
Merge a list of values that contains template after rendering them.
Merge precedence is consistent with http://masterminds.github.io/sprig/dicts.html#merge-mustmerge
Usage:
{{ include "common.tplvalues.merge" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }}
*/}}
{{- define "common.tplvalues.merge" -}}
{{- $dst := dict -}}
{{- range .values -}}
{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | merge $dst -}}
{{- end -}}
{{ $dst | toYaml }}
{{- end -}} {{- end -}}

View File

@ -14,7 +14,7 @@ metadata:
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
{{- $primaryPodLabels := merge .Values.primary.podLabels .Values.commonLabels }} {{- $primaryPodLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.podLabels .Values.commonLabels ) "context" . ) }}
podSelector: podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $primaryPodLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $primaryPodLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: primary app.kubernetes.io/component: primary
@ -47,7 +47,7 @@ spec:
{{- end }} {{- end }}
{{- if and .Values.networkPolicy.ingressRules.primaryAccessOnlyFrom.enabled (eq .Values.architecture "replication") }} {{- if and .Values.networkPolicy.ingressRules.primaryAccessOnlyFrom.enabled (eq .Values.architecture "replication") }}
- from: - from:
{{- $secondaryPodLabels := merge .Values.secondary.podLabels .Values.commonLabels }} {{- $secondaryPodLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.podLabels .Values.commonLabels ) "context" . ) }}
- podSelector: - podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $secondaryPodLabels "context" $ ) | nindent 14 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $secondaryPodLabels "context" $ ) | nindent 14 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary

View File

@ -21,7 +21,7 @@ spec:
{{- if .Values.primary.pdb.maxUnavailable }} {{- if .Values.primary.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.primary.pdb.maxUnavailable }} maxUnavailable: {{ .Values.primary.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.primary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: primary app.kubernetes.io/component: primary

View File

@ -16,7 +16,7 @@ metadata:
spec: spec:
replicas: 1 replicas: 1
revisionHistoryLimit: {{ .Values.primary.revisionHistoryLimit }} revisionHistoryLimit: {{ .Values.primary.revisionHistoryLimit }}
{{- $podLabels := merge .Values.primary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: primary app.kubernetes.io/component: primary
@ -371,7 +371,7 @@ spec:
volumeClaimTemplates: volumeClaimTemplates:
- metadata: - metadata:
name: data name: data
{{- $claimLabels := merge .Values.primary.persistence.labels .Values.commonLabels }} {{- $claimLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.persistence.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.matchLabels" ( dict "customLabels" $claimLabels "context" $ ) | nindent 10 }} labels: {{- include "common.labels.matchLabels" ( dict "customLabels" $claimLabels "context" $ ) | nindent 10 }}
app.kubernetes.io/component: primary app.kubernetes.io/component: primary
{{- if .Values.primary.persistence.annotations }} {{- if .Values.primary.persistence.annotations }}

View File

@ -12,7 +12,7 @@ metadata:
app.kubernetes.io/component: primary app.kubernetes.io/component: primary
annotations: annotations:
{{- if or .Values.primary.service.annotations .Values.commonAnnotations }} {{- if or .Values.primary.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.primary.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.service.annotations .Values.commonAnnotations ) "context" . ) }}
{{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- if and .Values.metrics.enabled .Values.metrics.annotations }} {{- if and .Values.metrics.enabled .Values.metrics.annotations }}
@ -57,6 +57,6 @@ spec:
{{- if .Values.primary.service.extraPorts }} {{- if .Values.primary.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.primary.service.extraPorts "context" $) | nindent 4 }} {{- include "common.tplvalues.render" (dict "value" .Values.primary.service.extraPorts "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.primary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.primary.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: primary app.kubernetes.io/component: primary

View File

@ -14,7 +14,7 @@ metadata:
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
{{- end }} {{- end }}
spec: spec:
{{- $secondaryPodLabels := merge .Values.secondary.podLabels .Values.commonLabels }} {{- $secondaryPodLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.podLabels .Values.commonLabels ) "context" . ) }}
podSelector: podSelector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $secondaryPodLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $secondaryPodLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary

View File

@ -21,7 +21,7 @@ spec:
{{- if .Values.secondary.pdb.maxUnavailable }} {{- if .Values.secondary.pdb.maxUnavailable }}
maxUnavailable: {{ .Values.secondary.pdb.maxUnavailable }} maxUnavailable: {{ .Values.secondary.pdb.maxUnavailable }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.secondary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary

View File

@ -17,7 +17,7 @@ metadata:
spec: spec:
replicas: {{ .Values.secondary.replicaCount }} replicas: {{ .Values.secondary.replicaCount }}
revisionHistoryLimit: {{ .Values.secondary.revisionHistoryLimit }} revisionHistoryLimit: {{ .Values.secondary.revisionHistoryLimit }}
{{- $podLabels := merge .Values.secondary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.podLabels .Values.commonLabels ) "context" . ) }}
selector: selector:
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary
@ -341,7 +341,7 @@ spec:
volumeClaimTemplates: volumeClaimTemplates:
- metadata: - metadata:
name: data name: data
{{- $claimLabels := merge .Values.secondary.persistence.labels .Values.commonLabels }} {{- $claimLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.persistence.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.matchLabels" ( dict "customLabels" $claimLabels "context" $ ) | nindent 10 }} labels: {{- include "common.labels.matchLabels" ( dict "customLabels" $claimLabels "context" $ ) | nindent 10 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary
{{- if .Values.secondary.persistence.annotations }} {{- if .Values.secondary.persistence.annotations }}

View File

@ -13,7 +13,7 @@ metadata:
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary
annotations: annotations:
{{- if or .Values.secondary.service.annotations .Values.commonAnnotations }} {{- if or .Values.secondary.service.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.secondary.service.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.service.annotations .Values.commonAnnotations ) "context" . ) }}
{{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- if and .Values.metrics.enabled .Values.metrics.annotations }} {{- if and .Values.metrics.enabled .Values.metrics.annotations }}
@ -58,7 +58,7 @@ spec:
{{- if .Values.secondary.service.extraPorts }} {{- if .Values.secondary.service.extraPorts }}
{{- include "common.tplvalues.render" (dict "value" .Values.secondary.service.extraPorts "context" $) | nindent 4 }} {{- include "common.tplvalues.render" (dict "value" .Values.secondary.service.extraPorts "context" $) | nindent 4 }}
{{- end }} {{- end }}
{{- $podLabels := merge .Values.secondary.podLabels .Values.commonLabels }} {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.secondary.podLabels .Values.commonLabels ) "context" . ) }}
selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }}
app.kubernetes.io/component: secondary app.kubernetes.io/component: secondary
{{- end }} {{- end }}

View File

@ -11,7 +11,7 @@ metadata:
namespace: {{ .Release.Namespace | quote }} namespace: {{ .Release.Namespace | quote }}
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
{{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }}
{{- $annotations := merge .Values.serviceAccount.annotations .Values.commonAnnotations }} {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.serviceAccount.annotations .Values.commonAnnotations ) "context" . ) }}
annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }}
{{- end }} {{- end }}
automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }}

View File

@ -9,7 +9,7 @@ kind: ServiceMonitor
metadata: metadata:
name: {{ include "common.names.fullname" . }} name: {{ include "common.names.fullname" . }}
namespace: {{ default .Release.Namespace .Values.metrics.prometheusRule.namespace | quote }} namespace: {{ default .Release.Namespace .Values.metrics.prometheusRule.namespace | quote }}
{{- $labels := merge .Values.metrics.serviceMonitor.labels .Values.commonLabels }} {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.labels .Values.commonLabels ) "context" . ) }}
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
{{- if .Values.commonAnnotations }} {{- if .Values.commonAnnotations }}
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}

View File

@ -1,6 +1,6 @@
dependencies: dependencies:
- name: common - name: common
repository: oci://registry-1.docker.io/bitnamicharts repository: oci://registry-1.docker.io/bitnamicharts
version: 2.9.0 version: 2.10.0
digest: sha256:416ad278a896f0e9b51d5305bef5d875c7cca6fbb64b75e1f131b04763e2aff9 digest: sha256:023ded170632d04528f30332370f34fc8fb96efb2886a01d934cb3bd6e6d2e09
generated: "2023-08-22T14:27:37.862238+02:00" generated: "2023-09-05T11:35:37.879743+02:00"

View File

@ -38,4 +38,4 @@ maintainers:
name: postgresql name: postgresql
sources: sources:
- https://github.com/bitnami/charts/tree/main/bitnami/postgresql - https://github.com/bitnami/charts/tree/main/bitnami/postgresql
version: 12.10.0 version: 12.11.0

View File

@ -2,7 +2,7 @@ annotations:
category: Infrastructure category: Infrastructure
licenses: Apache-2.0 licenses: Apache-2.0
apiVersion: v2 apiVersion: v2
appVersion: 2.9.0 appVersion: 2.9.2
description: A Library Helm Chart for grouping common logic between bitnami charts. description: A Library Helm Chart for grouping common logic between bitnami charts.
This chart is not deployable by itself. This chart is not deployable by itself.
home: https://bitnami.com home: https://bitnami.com
@ -20,4 +20,4 @@ name: common
sources: sources:
- https://github.com/bitnami/charts - https://github.com/bitnami/charts
type: library type: library
version: 2.9.0 version: 2.10.0

View File

@ -60,12 +60,13 @@ Return a topologyKey definition
{{/* {{/*
Return a soft podAffinity/podAntiAffinity definition Return a soft podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.soft" -}} {{- define "common.affinities.pods.soft" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
preferredDuringSchedulingIgnoredDuringExecution: preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm: - podAffinityTerm:
labelSelector: labelSelector:
@ -78,16 +79,30 @@ preferredDuringSchedulingIgnoredDuringExecution:
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: 1 weight: 1
{{- range $extraPodAffinityTerms }}
- podAffinityTerm:
labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 10 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
weight: {{ .weight | default 1 -}}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*
Return a hard podAffinity/podAntiAffinity definition Return a hard podAffinity/podAntiAffinity definition
{{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "context" $) -}} {{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "context" $) -}}
*/}} */}}
{{- define "common.affinities.pods.hard" -}} {{- define "common.affinities.pods.hard" -}}
{{- $component := default "" .component -}} {{- $component := default "" .component -}}
{{- $customLabels := default (dict) .customLabels -}} {{- $customLabels := default (dict) .customLabels -}}
{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} {{- $extraMatchLabels := default (dict) .extraMatchLabels -}}
{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}}
requiredDuringSchedulingIgnoredDuringExecution: requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector: - labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }} matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }}
@ -98,6 +113,17 @@ requiredDuringSchedulingIgnoredDuringExecution:
{{ $key }}: {{ $value | quote }} {{ $key }}: {{ $value | quote }}
{{- end }} {{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- range $extraPodAffinityTerms }}
- labelSelector:
matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 8 }}
{{- if not (empty $component) }}
{{ printf "app.kubernetes.io/component: %s" $component }}
{{- end }}
{{- range $key, $value := .extraMatchLabels }}
{{ $key }}: {{ $value | quote }}
{{- end }}
topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }}
{{- end -}}
{{- end -}} {{- end -}}
{{/* {{/*

View File

@ -11,17 +11,28 @@ Usage:
{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} {{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }}
*/}} */}}
{{- define "common.tplvalues.render" -}} {{- define "common.tplvalues.render" -}}
{{- if .scope }} {{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }}
{{- if typeIs "string" .value }} {{- if contains "{{" (toJson .value) }}
{{- tpl (cat "{{- with $.RelativeScope -}}" .value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- if .scope }}
{{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }}
{{- else }} {{- else }}
{{- tpl (cat "{{- with $.RelativeScope -}}" (.value | toYaml) "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} {{- tpl $value .context }}
{{- end }} {{- end }}
{{- else }} {{- else }}
{{- if typeIs "string" .value }} {{- $value }}
{{- tpl .value .context }} {{- end }}
{{- else }}
{{- tpl (.value | toYaml) .context }}
{{- end }}
{{- end -}} {{- end -}}
{{/*
Merge a list of values that contains template after rendering them.
Merge precedence is consistent with http://masterminds.github.io/sprig/dicts.html#merge-mustmerge
Usage:
{{ include "common.tplvalues.merge" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }}
*/}}
{{- define "common.tplvalues.merge" -}}
{{- $dst := dict -}}
{{- range .values -}}
{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | merge $dst -}}
{{- end -}}
{{ $dst | toYaml }}
{{- end -}} {{- end -}}

View File

@ -24,7 +24,7 @@ In order to replicate the container startup scripts execute this command:
{{- else }} {{- else }}
{{- $customUser := include "postgresql.username" . }} {{- $customUser := include "postgresql.v1.username" . }}
{{- $postgresPassword := include "common.secrets.lookup" (dict "secret" (include "common.names.fullname" .) "key" .Values.auth.secretKeys.adminPasswordKey "defaultValue" (ternary .Values.auth.postgresPassword .Values.auth.password (eq $customUser "postgres")) "context" $) -}} {{- $postgresPassword := include "common.secrets.lookup" (dict "secret" (include "common.names.fullname" .) "key" .Values.auth.secretKeys.adminPasswordKey "defaultValue" (ternary .Values.auth.postgresPassword .Values.auth.password (eq $customUser "postgres")) "context" $) -}}
{{- $authEnabled := and (not (or .Values.global.postgresql.auth.existingSecret .Values.auth.existingSecret)) (or $postgresPassword .Values.auth.enablePostgresUser (and (not (empty $customUser)) (ne $customUser "postgres"))) }} {{- $authEnabled := and (not (or .Values.global.postgresql.auth.existingSecret .Values.auth.existingSecret)) (or $postgresPassword .Values.auth.enablePostgresUser (and (not (empty $customUser)) (ne $customUser "postgres"))) }}
{{- if not $authEnabled }} {{- if not $authEnabled }}
@ -32,13 +32,13 @@ In order to replicate the container startup scripts execute this command:
WARNING: PostgreSQL has been configured without authentication, this is not recommended for production environments. WARNING: PostgreSQL has been configured without authentication, this is not recommended for production environments.
{{- end }} {{- end }}
PostgreSQL can be accessed via port {{ include "postgresql.service.port" . }} on the following DNS names from within your cluster: PostgreSQL can be accessed via port {{ include "postgresql.v1.service.port" . }} on the following DNS names from within your cluster:
{{ include "postgresql.primary.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local - Read/Write connection {{ include "postgresql.v1.primary.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local - Read/Write connection
{{- if eq .Values.architecture "replication" }} {{- if eq .Values.architecture "replication" }}
{{ include "postgresql.readReplica.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local - Read only connection {{ include "postgresql.v1.readReplica.fullname" . }}.{{ .Release.Namespace }}.svc.cluster.local - Read only connection
{{- end }} {{- end }}
@ -47,30 +47,30 @@ PostgreSQL can be accessed via port {{ include "postgresql.service.port" . }} on
To get the password for "postgres" run: To get the password for "postgres" run:
export POSTGRES_ADMIN_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.secretName" . }} -o jsonpath="{.data.{{include "postgresql.adminPasswordKey" .}}}" | base64 -d) export POSTGRES_ADMIN_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.v1.secretName" . }} -o jsonpath="{.data.{{include "postgresql.v1.adminPasswordKey" .}}}" | base64 -d)
{{- end }} {{- end }}
To get the password for "{{ $customUser }}" run: To get the password for "{{ $customUser }}" run:
export POSTGRES_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.secretName" . }} -o jsonpath="{.data.{{include "postgresql.userPasswordKey" .}}}" | base64 -d) export POSTGRES_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.v1.secretName" . }} -o jsonpath="{.data.{{include "postgresql.v1.userPasswordKey" .}}}" | base64 -d)
{{- else }} {{- else }}
{{- if .Values.auth.enablePostgresUser }} {{- if .Values.auth.enablePostgresUser }}
To get the password for "{{ default "postgres" $customUser }}" run: To get the password for "{{ default "postgres" $customUser }}" run:
export POSTGRES_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.secretName" . }} -o jsonpath="{.data.{{ ternary "password" (include "postgresql.adminPasswordKey" .) (and (not (empty $customUser)) (ne $customUser "postgres")) }}}" | base64 -d) export POSTGRES_PASSWORD=$(kubectl get secret --namespace {{ .Release.Namespace }} {{ include "postgresql.v1.secretName" . }} -o jsonpath="{.data.{{ ternary "password" (include "postgresql.v1.adminPasswordKey" .) (and (not (empty $customUser)) (ne $customUser "postgres")) }}}" | base64 -d)
{{- end }} {{- end }}
{{- end }} {{- end }}
To connect to your database run the following command: To connect to your database run the following command:
{{- if $authEnabled }} {{- if $authEnabled }}
kubectl run {{ include "common.names.fullname" . }}-client --rm --tty -i --restart='Never' --namespace {{ .Release.Namespace }} --image {{ include "postgresql.image" . }} --env="PGPASSWORD=$POSTGRES_PASSWORD" \ kubectl run {{ include "common.names.fullname" . }}-client --rm --tty -i --restart='Never' --namespace {{ .Release.Namespace }} --image {{ include "postgresql.v1.image" . }} --env="PGPASSWORD=$POSTGRES_PASSWORD" \
--command -- psql --host {{ include "postgresql.primary.fullname" . }} -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.service.port" . }} --command -- psql --host {{ include "postgresql.v1.primary.fullname" . }} -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.v1.service.port" . }}
{{- else }} {{- else }}
kubectl run {{ include "common.names.fullname" . }}-client --rm --tty -i --restart='Never' --namespace {{ .Release.Namespace }} --image {{ include "postgresql.image" . }} \ kubectl run {{ include "common.names.fullname" . }}-client --rm --tty -i --restart='Never' --namespace {{ .Release.Namespace }} --image {{ include "postgresql.v1.image" . }} \
--command -- psql --host {{ include "postgresql.primary.fullname" . }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.service.port" . }} --command -- psql --host {{ include "postgresql.v1.primary.fullname" . }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.v1.service.port" . }}
{{- end }} {{- end }}
> NOTE: If you access the container using bash, make sure that you execute "/opt/bitnami/scripts/postgresql/entrypoint.sh /bin/bash" in order to avoid the error "psql: local user with ID {{ .Values.primary.containerSecurityContext.runAsUser }}} does not exist" > NOTE: If you access the container using bash, make sure that you execute "/opt/bitnami/scripts/postgresql/entrypoint.sh /bin/bash" in order to avoid the error "psql: local user with ID {{ .Values.primary.containerSecurityContext.runAsUser }}} does not exist"
@ -80,36 +80,36 @@ To connect to your database from outside the cluster execute the following comma
{{- if contains "NodePort" .Values.primary.service.type }} {{- if contains "NodePort" .Values.primary.service.type }}
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}") export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "postgresql.primary.fullname" . }}) export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "postgresql.v1.primary.fullname" . }})
{{- if $authEnabled }} {{- if $authEnabled }}
PGPASSWORD="$POSTGRES_PASSWORD" psql --host $NODE_IP --port $NODE_PORT -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} PGPASSWORD="$POSTGRES_PASSWORD" psql --host $NODE_IP --port $NODE_PORT -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }}
{{- else }} {{- else }}
psql --host $NODE_IP --port $NODE_PORT -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} psql --host $NODE_IP --port $NODE_PORT -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }}
{{- end }} {{- end }}
{{- else if contains "LoadBalancer" .Values.primary.service.type }} {{- else if contains "LoadBalancer" .Values.primary.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available. NOTE: It may take a few minutes for the LoadBalancer IP to be available.
Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ include "postgresql.primary.fullname" . }}' Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ include "postgresql.v1.primary.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "postgresql.primary.fullname" . }} --template "{{ "{{ range (index .status.loadBalancer.ingress 0) }}{{ . }}{{ end }}" }}") export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "postgresql.v1.primary.fullname" . }} --template "{{ "{{ range (index .status.loadBalancer.ingress 0) }}{{ . }}{{ end }}" }}")
{{- if $authEnabled }} {{- if $authEnabled }}
PGPASSWORD="$POSTGRES_PASSWORD" psql --host $SERVICE_IP --port {{ include "postgresql.service.port" . }} -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} PGPASSWORD="$POSTGRES_PASSWORD" psql --host $SERVICE_IP --port {{ include "postgresql.v1.service.port" . }} -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }}
{{- else }} {{- else }}
psql --host $SERVICE_IP --port {{ include "postgresql.service.port" . }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} psql --host $SERVICE_IP --port {{ include "postgresql.v1.service.port" . }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }}
{{- end }} {{- end }}
{{- else if contains "ClusterIP" .Values.primary.service.type }} {{- else if contains "ClusterIP" .Values.primary.service.type }}
kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ include "postgresql.primary.fullname" . }} {{ include "postgresql.service.port" . }}:{{ include "postgresql.service.port" . }} & kubectl port-forward --namespace {{ .Release.Namespace }} svc/{{ include "postgresql.v1.primary.fullname" . }} {{ include "postgresql.v1.service.port" . }}:{{ include "postgresql.v1.service.port" . }} &
{{- if $authEnabled }} {{- if $authEnabled }}
PGPASSWORD="$POSTGRES_PASSWORD" psql --host 127.0.0.1 -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.service.port" . }} PGPASSWORD="$POSTGRES_PASSWORD" psql --host 127.0.0.1 -U {{ default "postgres" $customUser }} -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.v1.service.port" . }}
{{- else }} {{- else }}
psql --host 127.0.0.1 -d {{- if include "postgresql.database" . }} {{ include "postgresql.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.service.port" . }} psql --host 127.0.0.1 -d {{- if include "postgresql.v1.database" . }} {{ include "postgresql.v1.database" . }}{{- else }} postgres{{- end }} -p {{ include "postgresql.v1.service.port" . }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- end }} {{- end }}
WARNING: The configured password will be ignored on new installation in case when previous PostgreSQL release was deleted through the helm command. In that case, old PVC will have an old password, and setting it through helm won't take effect. Deleting persistent volumes (PVs) will solve the issue. WARNING: The configured password will be ignored on new installation in case when previous PostgreSQL release was deleted through the helm command. In that case, old PVC will have an old password, and setting it through helm won't take effect. Deleting persistent volumes (PVs) will solve the issue.
{{- include "postgresql.validateValues" . -}} {{- include "postgresql.v1.validateValues" . -}}
{{- include "common.warnings.rollingTag" .Values.image -}} {{- include "common.warnings.rollingTag" .Values.image -}}
{{- include "common.warnings.rollingTag" .Values.volumePermissions.image }} {{- include "common.warnings.rollingTag" .Values.volumePermissions.image }}

Some files were not shown because too many files have changed in this diff Show More