{{ if (eq .Values.backup.method "objectStore") }} {{ $context := . -}} {{ range .Values.backup.objectStore -}} --- apiVersion: barmancloud.cnpg.io/v1 kind: ObjectStore metadata: name: {{ include "cluster.name" $context }}-backup-{{ .name }} namespace: {{ include "cluster.namespace" $context }} labels: {{- include "cluster.labels" $context | nindent 4 }} app.kubernetes.io/name: {{ include "cluster.name" $context }}-backup-{{ .name }} {{- with $context.Values.cluster.additionalLabels }} {{- toYaml . | nindent 4 }} {{- end }} spec: retentionPolicy: {{ .retentionPolicy | default "7d" }} configuration: destinationPath: {{ include "cluster.backupDestinationPath" (dict "instance" . "global" $context) }} endpointURL: {{ .endpointURL | default "http://garage-main.garage:3900" }} {{- if .endpointCA }} endpointCA: name: {{ .endpointCA.name }} key: {{ .endpointCA.key }} {{- end }} {{- if .wal }} wal: compression: {{ .wal.compression | default "snappy" }} {{ with .wal.encryption }} encryption: {{ . }} {{ end }} maxParallel: {{ .wal.maxParallel | default "1" }} {{- end }} {{- if .data }} data: compression: {{ .data.compression | default "snappy" }} {{- with .data.encryption }} encryption: {{ . }} {{- end }} jobs: {{ .data.jobs | default 1 }} {{- end }} s3Credentials: accessKeyId: name: {{ include "cluster.backupSecretName" (dict "instance" . "global" $context) }} key: ACCESS_KEY_ID secretAccessKey: name: {{ include "cluster.backupSecretName" (dict "instance" . "global" $context) }} key: ACCESS_SECRET_KEY region: name: {{ include "cluster.backupSecretName" (dict "instance" . "global" $context) }} key: ACCESS_REGION {{ end -}} {{ end }} {{ if eq .Values.recovery.method "objectStore" }} --- apiVersion: barmancloud.cnpg.io/v1 kind: ObjectStore metadata: name: "{{ include "cluster.name" . }}-recovery" namespace: {{ include "cluster.namespace" . }} labels: {{- include "cluster.labels" . | nindent 4 }} app.kubernetes.io/name: "{{ include "cluster.name" . }}-recovery" {{- with .Values.cluster.additionalLabels }} {{- toYaml . | nindent 4 }} {{- end }} spec: configuration: destinationPath: {{ include "cluster.recoveryDestinationPath" . }} endpointURL: {{ .Values.recovery.objectStore.endpointURL }} {{- if .Values.recovery.objectStore.endpointCA.name }} endpointCA: name: {{ .Values.recovery.objectStore.endpointCA.name }} key: {{ .Values.recovery.objectStore.endpointCA.key }} {{- end }} wal: compression: {{ .Values.recovery.objectStore.wal.compression }} {{- with .Values.recovery.objectStore.wal.encryption}} encryption: {{ . }} {{- end }} maxParallel: {{ .Values.recovery.objectStore.wal.maxParallel }} data: compression: {{ .Values.recovery.objectStore.data.compression }} {{- with .Values.recovery.objectStore.data.encryption }} encryption: {{ . }} {{- end }} jobs: {{ .Values.recovery.objectStore.data.jobs }} s3Credentials: accessKeyId: name: {{ include "cluster.recoverySecretName" . }} key: ACCESS_KEY_ID secretAccessKey: name: {{ include "cluster.recoverySecretName" . }} key: ACCESS_SECRET_KEY region: name: {{ include "cluster.recoverySecretName" . }} key: ACCESS_REGION {{ end }}