From d7bae1ed6b408b98066ea2703fafd3ae3fa05c22 Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Thu, 19 Dec 2024 10:21:57 -0800 Subject: [PATCH] Add MysQL 8.4.3 & 9.1.0 (#1477) Signed-off-by: Tamal Saha --- catalog/kubedb/active_versions.json | 2 + catalog/kubedb/backup_tasks.json | 2 + .../raw/mysql/mysql-8.4.2-official.yaml | 2 +- .../raw/mysql/mysql-8.4.3-official.yaml | 55 ++++++++++++++++ .../raw/mysql/mysql-9.0.1-official.yaml | 2 +- .../raw/mysql/mysql-9.1.0-official.yaml | 55 ++++++++++++++++ catalog/kubedb/restore_tasks.json | 2 + .../templates/mysql/mysql-8.4.2-official.yaml | 2 +- .../templates/mysql/mysql-8.4.3-official.yaml | 65 +++++++++++++++++++ .../templates/mysql/mysql-9.0.1-official.yaml | 2 +- .../templates/mysql/mysql-9.1.0-official.yaml | 65 +++++++++++++++++++ 11 files changed, 250 insertions(+), 4 deletions(-) create mode 100644 catalog/kubedb/raw/mysql/mysql-8.4.3-official.yaml create mode 100644 catalog/kubedb/raw/mysql/mysql-9.1.0-official.yaml create mode 100644 charts/kubedb-catalog/templates/mysql/mysql-8.4.3-official.yaml create mode 100644 charts/kubedb-catalog/templates/mysql/mysql-9.1.0-official.yaml diff --git a/catalog/kubedb/active_versions.json b/catalog/kubedb/active_versions.json index 7360c0836..88675642c 100644 --- a/catalog/kubedb/active_versions.json +++ b/catalog/kubedb/active_versions.json @@ -113,7 +113,9 @@ "4.2.24" ], "MySQL": [ + "9.1.0", "9.0.1", + "8.4.3", "8.4.2", "8.2.0", "8.1.0", diff --git a/catalog/kubedb/backup_tasks.json b/catalog/kubedb/backup_tasks.json index 6073cc216..aa70e54c1 100644 --- a/catalog/kubedb/backup_tasks.json +++ b/catalog/kubedb/backup_tasks.json @@ -79,7 +79,9 @@ "5.7.42-debian" ], "mysql-backup-8.0.21": [ + "9.1.0", "9.0.1", + "8.4.3", "8.4.2", "8.2.0", "8.1.0", diff --git a/catalog/kubedb/raw/mysql/mysql-8.4.2-official.yaml b/catalog/kubedb/raw/mysql/mysql-8.4.2-official.yaml index 0e5885910..537986615 100644 --- a/catalog/kubedb/raw/mysql/mysql-8.4.2-official.yaml +++ b/catalog/kubedb/raw/mysql/mysql-8.4.2-official.yaml @@ -14,7 +14,7 @@ spec: volumeSnapshot: name: volume-snapshot walg: - image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_8.2.0 + image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_8.4.3 coordinator: image: ghcr.io/kubedb/mysql-coordinator:v0.27.0 db: diff --git a/catalog/kubedb/raw/mysql/mysql-8.4.3-official.yaml b/catalog/kubedb/raw/mysql/mysql-8.4.3-official.yaml new file mode 100644 index 000000000..858a54973 --- /dev/null +++ b/catalog/kubedb/raw/mysql/mysql-8.4.3-official.yaml @@ -0,0 +1,55 @@ +apiVersion: catalog.kubedb.com/v1alpha1 +kind: MySQLVersion +metadata: + name: 8.4.3 +spec: + archiver: + addon: + name: mysql-addon + tasks: + manifestBackup: + name: manifest-backup + manifestRestore: + name: manifest-restore + volumeSnapshot: + name: volume-snapshot + walg: + image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_8.4.3 + coordinator: + image: ghcr.io/kubedb/mysql-coordinator:v0.27.0 + db: + image: ghcr.io/appscode-images/mysql:8.4.3-oracle + distribution: Official + exporter: + image: ghcr.io/kubedb/mysqld-exporter:v0.13.1 + gitSyncer: + image: registry.k8s.io/git-sync/git-sync:v4.2.1 + initContainer: + image: ghcr.io/kubedb/mysql-init:8.4.3-v3 + podSecurityPolicies: + databasePolicyName: mysql-db + replicationModeDetector: + image: ghcr.io/kubedb/replication-mode-detector:v0.36.0 + securityContext: + runAsUser: 999 + stash: + addon: + backupTask: + name: mysql-backup-8.0.21 + restoreTask: + name: mysql-restore-8.0.21 + ui: + - name: phpmyadmin + version: v2024.4.27 + updateConstraints: + allowlist: + groupReplication: + - '> 8.4.3, <= 8.4.3' + standalone: + - '> 8.4.3, <= 8.4.3' + denylist: + groupReplication: + - < 8.4.3 + standalone: + - < 8.4.3 + version: 8.4.3 diff --git a/catalog/kubedb/raw/mysql/mysql-9.0.1-official.yaml b/catalog/kubedb/raw/mysql/mysql-9.0.1-official.yaml index b2bd1f62d..6a5126b78 100644 --- a/catalog/kubedb/raw/mysql/mysql-9.0.1-official.yaml +++ b/catalog/kubedb/raw/mysql/mysql-9.0.1-official.yaml @@ -14,7 +14,7 @@ spec: volumeSnapshot: name: volume-snapshot walg: - image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_8.2.0 + image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_9.1.0 coordinator: image: ghcr.io/kubedb/mysql-coordinator:v0.27.0 db: diff --git a/catalog/kubedb/raw/mysql/mysql-9.1.0-official.yaml b/catalog/kubedb/raw/mysql/mysql-9.1.0-official.yaml new file mode 100644 index 000000000..9c366a1c6 --- /dev/null +++ b/catalog/kubedb/raw/mysql/mysql-9.1.0-official.yaml @@ -0,0 +1,55 @@ +apiVersion: catalog.kubedb.com/v1alpha1 +kind: MySQLVersion +metadata: + name: 9.1.0 +spec: + archiver: + addon: + name: mysql-addon + tasks: + manifestBackup: + name: manifest-backup + manifestRestore: + name: manifest-restore + volumeSnapshot: + name: volume-snapshot + walg: + image: ghcr.io/kubedb/mysql-archiver:(v0.10.0)_9.1.0 + coordinator: + image: ghcr.io/kubedb/mysql-coordinator:v0.27.0 + db: + image: ghcr.io/appscode-images/mysql:9.1.0-oracle + distribution: Official + exporter: + image: ghcr.io/kubedb/mysqld-exporter:v0.13.1 + gitSyncer: + image: registry.k8s.io/git-sync/git-sync:v4.2.1 + initContainer: + image: ghcr.io/kubedb/mysql-init:9.1.0-v1 + podSecurityPolicies: + databasePolicyName: mysql-db + replicationModeDetector: + image: ghcr.io/kubedb/replication-mode-detector:v0.36.0 + securityContext: + runAsUser: 999 + stash: + addon: + backupTask: + name: mysql-backup-8.0.21 + restoreTask: + name: mysql-restore-8.0.21 + ui: + - name: phpmyadmin + version: v2024.4.27 + updateConstraints: + allowlist: + groupReplication: + - '> 9.1.0, <= 9.1.0' + standalone: + - '> 9.1.0, <= 9.1.0' + denylist: + groupReplication: + - < 9.1.0 + standalone: + - < 9.1.0 + version: 9.1.0 diff --git a/catalog/kubedb/restore_tasks.json b/catalog/kubedb/restore_tasks.json index 8902560f4..e1df7e935 100644 --- a/catalog/kubedb/restore_tasks.json +++ b/catalog/kubedb/restore_tasks.json @@ -79,7 +79,9 @@ "5.7.42-debian" ], "mysql-restore-8.0.21": [ + "9.1.0", "9.0.1", + "8.4.3", "8.4.2", "8.2.0", "8.1.0", diff --git a/charts/kubedb-catalog/templates/mysql/mysql-8.4.2-official.yaml b/charts/kubedb-catalog/templates/mysql/mysql-8.4.2-official.yaml index 1d1926dde..92c2dcbbe 100644 --- a/charts/kubedb-catalog/templates/mysql/mysql-8.4.2-official.yaml +++ b/charts/kubedb-catalog/templates/mysql/mysql-8.4.2-official.yaml @@ -23,7 +23,7 @@ spec: volumeSnapshot: name: volume-snapshot walg: - image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_8.2.0' + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_8.4.3' coordinator: image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-coordinator") $) }}:v0.27.0' db: diff --git a/charts/kubedb-catalog/templates/mysql/mysql-8.4.3-official.yaml b/charts/kubedb-catalog/templates/mysql/mysql-8.4.3-official.yaml new file mode 100644 index 000000000..aa5687fe6 --- /dev/null +++ b/charts/kubedb-catalog/templates/mysql/mysql-8.4.3-official.yaml @@ -0,0 +1,65 @@ +{{ $featureGates := .Values.featureGates }} +{{- if .Values.global }} + {{ $featureGates = mergeOverwrite dict .Values.featureGates .Values.global.featureGates }} +{{- end }} + +{{ if $featureGates.MySQL }} + +apiVersion: catalog.kubedb.com/v1alpha1 +kind: MySQLVersion +metadata: + name: '8.4.3' + labels: + {{- include "kubedb-catalog.labels" . | nindent 4 }} +spec: + archiver: + addon: + name: mysql-addon + tasks: + manifestBackup: + name: manifest-backup + manifestRestore: + name: manifest-restore + volumeSnapshot: + name: volume-snapshot + walg: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_8.4.3' + coordinator: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-coordinator") $) }}:v0.27.0' + db: + image: '{{ include "image.ghcr" (merge (dict "_repo" "appscode-images/mysql") $) }}:8.4.3-oracle' + distribution: Official + exporter: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysqld-exporter") $) }}:v0.13.1' + gitSyncer: + image: '{{ include "image.kubernetes" (merge (dict "_repo" "git-sync/git-sync") $) }}:v4.2.1' + initContainer: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-init") $) }}:8.4.3-v3' + podSecurityPolicies: + databasePolicyName: mysql-db + replicationModeDetector: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/replication-mode-detector") $) }}:v0.36.0' + securityContext: + runAsUser: 999 + stash: + addon: + backupTask: + name: mysql-backup-8.0.21 + restoreTask: + name: mysql-restore-8.0.21 + ui: + - name: phpmyadmin + version: v2024.4.27 + updateConstraints: + allowlist: + groupReplication: + - '> 8.4.3, <= 8.4.3' + standalone: + - '> 8.4.3, <= 8.4.3' + denylist: + groupReplication: + - < 8.4.3 + standalone: + - < 8.4.3 + version: 8.4.3 +{{ end }} diff --git a/charts/kubedb-catalog/templates/mysql/mysql-9.0.1-official.yaml b/charts/kubedb-catalog/templates/mysql/mysql-9.0.1-official.yaml index 640340337..559767a8e 100644 --- a/charts/kubedb-catalog/templates/mysql/mysql-9.0.1-official.yaml +++ b/charts/kubedb-catalog/templates/mysql/mysql-9.0.1-official.yaml @@ -23,7 +23,7 @@ spec: volumeSnapshot: name: volume-snapshot walg: - image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_8.2.0' + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_9.1.0' coordinator: image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-coordinator") $) }}:v0.27.0' db: diff --git a/charts/kubedb-catalog/templates/mysql/mysql-9.1.0-official.yaml b/charts/kubedb-catalog/templates/mysql/mysql-9.1.0-official.yaml new file mode 100644 index 000000000..58e304e33 --- /dev/null +++ b/charts/kubedb-catalog/templates/mysql/mysql-9.1.0-official.yaml @@ -0,0 +1,65 @@ +{{ $featureGates := .Values.featureGates }} +{{- if .Values.global }} + {{ $featureGates = mergeOverwrite dict .Values.featureGates .Values.global.featureGates }} +{{- end }} + +{{ if $featureGates.MySQL }} + +apiVersion: catalog.kubedb.com/v1alpha1 +kind: MySQLVersion +metadata: + name: '9.1.0' + labels: + {{- include "kubedb-catalog.labels" . | nindent 4 }} +spec: + archiver: + addon: + name: mysql-addon + tasks: + manifestBackup: + name: manifest-backup + manifestRestore: + name: manifest-restore + volumeSnapshot: + name: volume-snapshot + walg: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-archiver") $) }}:v0.10.0_9.1.0' + coordinator: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-coordinator") $) }}:v0.27.0' + db: + image: '{{ include "image.ghcr" (merge (dict "_repo" "appscode-images/mysql") $) }}:9.1.0-oracle' + distribution: Official + exporter: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysqld-exporter") $) }}:v0.13.1' + gitSyncer: + image: '{{ include "image.kubernetes" (merge (dict "_repo" "git-sync/git-sync") $) }}:v4.2.1' + initContainer: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/mysql-init") $) }}:9.1.0-v1' + podSecurityPolicies: + databasePolicyName: mysql-db + replicationModeDetector: + image: '{{ include "image.ghcr" (merge (dict "_repo" "kubedb/replication-mode-detector") $) }}:v0.36.0' + securityContext: + runAsUser: 999 + stash: + addon: + backupTask: + name: mysql-backup-8.0.21 + restoreTask: + name: mysql-restore-8.0.21 + ui: + - name: phpmyadmin + version: v2024.4.27 + updateConstraints: + allowlist: + groupReplication: + - '> 9.1.0, <= 9.1.0' + standalone: + - '> 9.1.0, <= 9.1.0' + denylist: + groupReplication: + - < 9.1.0 + standalone: + - < 9.1.0 + version: 9.1.0 +{{ end }}