mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
changed mysql password usage to prevent warnings & used labels the helm 2.14 way (#15893)
Signed-off-by: André Bauer <andre.bauer@kiwigrid.com>
This commit is contained in:
committed by
Kubernetes Prow Robot
parent
8a0412450d
commit
b50f642938
@@ -2,7 +2,7 @@ apiVersion: v1
|
||||
appVersion: 2.4.1
|
||||
description: A Helm chart to help backup MySQL databases using mysqldump
|
||||
name: mysqldump
|
||||
version: 2.5.0
|
||||
version: 2.5.1
|
||||
keywords:
|
||||
- mysql
|
||||
- mysqldump
|
||||
|
||||
@@ -6,7 +6,7 @@ spec:
|
||||
command: ["/bin/bash", "/scripts/backup.sh"]
|
||||
{{- if .Values.mysql.existingSecret }}
|
||||
env:
|
||||
- name: MYSQL_PASSWORD
|
||||
- name: MYSQL_PWD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ .Values.mysql.existingSecret | quote }}
|
||||
|
||||
@@ -43,4 +43,17 @@ Generate gcp service account name
|
||||
*/}}
|
||||
{{- define "mysqldump.serviceAccountName" -}}
|
||||
{{ default (include "mysqldump.fullname" .) .Values.upload.googlestoragebucket.serviceAccountName }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "mysqldump.labels" -}}
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -3,10 +3,7 @@ kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "mysqldump.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
data:
|
||||
MYSQL_HOST: {{ .Values.mysql.host | quote }}
|
||||
MYSQL_USERNAME: {{ .Values.mysql.username | quote }}
|
||||
@@ -19,10 +16,7 @@ kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "mysqldump.fullname" . }}-script
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
data:
|
||||
backup.sh: |-
|
||||
#!/bin/sh
|
||||
@@ -36,7 +30,7 @@ data:
|
||||
TIMESTAMP="$(date +%Y%m%d%H%M%S)"
|
||||
|
||||
echo "test mysql connection"
|
||||
if [ -z "$(mysql -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} -B -N -e 'SHOW DATABASES;')" ]; then
|
||||
if [ -z "$(mysql -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} -B -N -e 'SHOW DATABASES;')" ]; then
|
||||
echo "mysql connection failed! exiting..."
|
||||
exit 1
|
||||
fi
|
||||
@@ -54,13 +48,13 @@ data:
|
||||
MYSQL_DB="{{ .Values.mysql.db }}"
|
||||
echo "Backing up single db ${MYSQL_DB}"
|
||||
{{ if .Values.saveToDirectory }}mkdir -p "${BACKUP_DIR}"/"${MYSQL_DB}"{{ end }}
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} --databases ${MYSQL_DB} | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} --databases ${MYSQL_DB} | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
rc=$?
|
||||
{{ else if and (.Values.allDatabases.enabled) (eq .Values.allDatabases.singleBackupFile false)}}
|
||||
for MYSQL_DB in $(mysql -h "${MYSQL_HOST}" -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} -B -N -e "SHOW DATABASES;"|egrep -v '^(information|performance)_schema$'); do
|
||||
for MYSQL_DB in $(mysql -h "${MYSQL_HOST}" -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} -B -N -e "SHOW DATABASES;"|egrep -v '^(information|performance)_schema$'); do
|
||||
echo "Backing up db ${MYSQL_DB}"
|
||||
{{ if .Values.saveToDirectory }}mkdir -p "${BACKUP_DIR}"/"${MYSQL_DB}"{{ end }}
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} --databases ${MYSQL_DB} | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} --databases ${MYSQL_DB} | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
rc=$?
|
||||
done
|
||||
|
||||
@@ -68,7 +62,7 @@ data:
|
||||
echo "Backing up all databases"
|
||||
MYSQL_DB="alldatabases"
|
||||
{{ if .Values.saveToDirectory }}mkdir -p "${BACKUP_DIR}"/"${MYSQL_DB}"{{ end }}
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} --all-databases | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} --all-databases | gzip > ${BACKUP_DIR}/{{ if .Values.saveToDirectory }}${MYSQL_DB}/{{ end }}${TIMESTAMP}_${MYSQL_DB}.sql.gz
|
||||
rc=$?
|
||||
{{- end -}}
|
||||
|
||||
@@ -93,7 +87,7 @@ data:
|
||||
|
||||
{{- else }}
|
||||
{{ if .Values.dumpAllToStdout }}
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME}{{ if or .Values.mysql.password .Values.mysql.existingSecret }} -p${MYSQL_PASSWORD}{{ end }} --all-databases
|
||||
mysqldump ${MYSQL_OPTS} -h ${MYSQL_HOST} -P ${MYSQL_PORT} -u ${MYSQL_USERNAME} --all-databases
|
||||
rc=$?
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
|
||||
@@ -4,10 +4,7 @@ kind: CronJob
|
||||
metadata:
|
||||
name: {{ template "mysqldump.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
spec:
|
||||
schedule: "{{ .Values.schedule }}"
|
||||
successfulJobsHistoryLimit: {{ .Values.successfulJobsHistoryLimit }}
|
||||
|
||||
@@ -4,10 +4,7 @@ kind: GcpServiceAccount
|
||||
metadata:
|
||||
labels:
|
||||
controller-tools.k8s.io: "1.0"
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
name: {{ template "mysqldump.fullname" . }}
|
||||
spec:
|
||||
serviceAccountIdentifier: {{ template "mysqldump.serviceAccountName" . }}
|
||||
|
||||
@@ -4,10 +4,7 @@ kind: Job
|
||||
metadata:
|
||||
name: {{ template "mysqldump.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
spec:
|
||||
backoffLimit: 1
|
||||
template:
|
||||
|
||||
@@ -5,10 +5,7 @@ kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ template "mysqldump.fullname" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
spec:
|
||||
accessModes: [{{ .Values.persistence.accessMode | quote }}]
|
||||
{{- if .Values.persistence.storageClass }}
|
||||
|
||||
@@ -4,13 +4,10 @@ kind: Secret
|
||||
metadata:
|
||||
name: "{{ template "mysqldump.fullname" . }}"
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
type: Opaque
|
||||
data:
|
||||
MYSQL_PASSWORD: {{ .Values.mysql.password | b64enc | quote }}
|
||||
MYSQL_PWD: {{ .Values.mysql.password | b64enc | quote }}
|
||||
---
|
||||
{{- end }}
|
||||
{{- if .Values.upload.ssh.enabled }}
|
||||
@@ -19,10 +16,7 @@ kind: Secret
|
||||
metadata:
|
||||
name: "{{ template "mysqldump.fullname" . }}-ssh-privatekey"
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
type: Opaque
|
||||
stringData:
|
||||
id_rsa: {{ .Values.upload.ssh.privatekey | quote }}
|
||||
@@ -36,10 +30,7 @@ kind: Secret
|
||||
metadata:
|
||||
name: {{ template "mysqldump.gcpsecretName" . }}
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "mysqldump.name" . }}
|
||||
helm.sh/chart: {{ include "mysqldump.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{ include "mysqldump.labels" . | indent 4 }}
|
||||
type: Opaque
|
||||
stringData:
|
||||
{{ .Values.upload.googlestoragebucket.secretFileName }}: {{ .Values.upload.googlestoragebucket.jsonKeyfile | quote }}
|
||||
|
||||
Reference in New Issue
Block a user