From 7df9a9a5843e4002de0adcc6e0e9537657194c50 Mon Sep 17 00:00:00 2001 From: yamatcha Date: Mon, 4 Dec 2023 06:53:14 +0000 Subject: [PATCH 1/4] Support MySQL 8.0.35 in CI --- .github/workflows/ci-e2e.yaml | 6 +++--- .github/workflows/weekly.yaml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-e2e.yaml b/.github/workflows/ci-e2e.yaml index cee1f6376..0df26fd97 100644 --- a/.github/workflows/ci-e2e.yaml +++ b/.github/workflows/ci-e2e.yaml @@ -30,7 +30,7 @@ jobs: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.28", "8.0.33", "8.0.34"] + mysql-version: ["8.0.28", "8.0.34", "8.0.35"] uses: ./.github/workflows/dbtest.yaml with: mysql-version: ${{ matrix.mysql-version }} @@ -39,7 +39,7 @@ jobs: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.34"] + mysql-version: ["8.0.35"] k8s-version: ["1.25.9", "1.26.4", "1.27.1"] uses: ./.github/workflows/e2e.yaml with: @@ -50,7 +50,7 @@ jobs: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.28", "8.0.33", "8.0.34"] + mysql-version: ["8.0.28", "8.0.34", "8.0.35"] k8s-version: ["1.27.1"] uses: ./.github/workflows/e2e.yaml with: diff --git a/.github/workflows/weekly.yaml b/.github/workflows/weekly.yaml index d6125ccd6..9e20a8150 100644 --- a/.github/workflows/weekly.yaml +++ b/.github/workflows/weekly.yaml @@ -17,7 +17,7 @@ jobs: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34"] + mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34", "8.0.35"] uses: ./.github/workflows/dbtest.yaml with: mysql-version: ${{ matrix.mysql-version }} @@ -26,7 +26,7 @@ jobs: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.34"] + mysql-version: ["8.0.35"] k8s-version: ["1.25.9", "1.26.4", "1.27.1"] uses: ./.github/workflows/e2e.yaml with: @@ -37,7 +37,7 @@ jobs: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34"] + mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34", "8.0.35"] k8s-version: ["1.27.1"] uses: ./.github/workflows/e2e.yaml with: From 90037e9e1bee051638bb01d16f1a29ee0171fffa Mon Sep 17 00:00:00 2001 From: yamatcha Date: Mon, 4 Dec 2023 06:58:32 +0000 Subject: [PATCH 2/4] docs: Support MySQL 8.0.35 Signed-off-by: yamatcha --- DEVELOP.md | 10 +++++----- README.md | 4 ++-- docs/custom-mysqld.md | 2 +- docs/usage.md | 6 +++--- examples/anti-affinity.yaml | 2 +- examples/collect-metrics.yaml | 2 +- examples/custom-mycnf.yaml | 2 +- examples/custom-probe.yaml | 2 +- examples/guaranteed.yaml | 2 +- examples/loadbalancer.yaml | 2 +- 10 files changed, 17 insertions(+), 17 deletions(-) diff --git a/DEVELOP.md b/DEVELOP.md index 155266273..a06959e61 100644 --- a/DEVELOP.md +++ b/DEVELOP.md @@ -58,10 +58,10 @@ Edit the following lines in `Dockerfile`: ``` # The tag should be the latest one -FROM ghcr.io/cybozu-go/moco/mysql:8.0.34.1 as mysql +FROM ghcr.io/cybozu-go/moco/mysql:8.0.35.1 as mysql # See the below description for how to get the version string. -ARG MYSQLSH_VERSION=8.0.34-1 +ARG MYSQLSH_VERSION=8.0.35-1 ``` The MySQL shell debian package can be found in https://dev.mysql.com/downloads/shell/ . @@ -88,14 +88,14 @@ MySQL versions appear twice: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34"] + mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34", "8.0.35"] ... # Matrix tests for the latest MySQL version on different Kubernetes versions. e2e: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.34"] + mysql-version: ["8.0.35"] k8s-version: ["1.19.11", "1.20.7", "1.21.1"] ... # Matrix tests for different MySQL versions on the latest supported Kubernetes version. @@ -103,7 +103,7 @@ MySQL versions appear twice: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34"] + mysql-version: ["8.0.18", "8.0.25", "8.0.26", "8.0.27", "8.0.28", "8.0.30", "8.0.31", "8.0.32", "8.0.33", "8.0.34", "8.0.35"] k8s-version: ["1.21.1"] ``` diff --git a/README.md b/README.md index ea9af69fb..c42e17b61 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ Blog article: [Introducing MOCO, a modern MySQL operator on Kubernetes](https:// ## Supported software -- MySQL: 8.0.18, 8.0.25, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34 +- MySQL: 8.0.18, 8.0.25, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34, 8.0.35 - Kubernetes: 1.25, 1.26, 1.27 MOCO supports (tests) the LTS releases of MySQL 8. @@ -74,7 +74,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/docs/custom-mysqld.md b/docs/custom-mysqld.md index 9eaeac2e0..1309e4c9c 100644 --- a/docs/custom-mysqld.md +++ b/docs/custom-mysqld.md @@ -11,7 +11,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 ``` If you want to build and use your own `mysqld`, read the rest of this document. diff --git a/docs/usage.md b/docs/usage.md index f3089f7a9..aff163f75 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -99,7 +99,7 @@ spec: containers: # At least a container named "mysqld" must be defined. - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 # By limiting CPU and memory, Pods will have Guaranteed QoS class. # requests can be omitted; it will be set to the same value as limits. resources: @@ -207,7 +207,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 # must be the same version as the donor + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 # must be the same version as the donor volumeClaimTemplates: - metadata: name: mysql-data @@ -695,7 +695,7 @@ spec: containers: - name: mysqld # Edit the next line - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 ``` You are advised to make backups and/or create a replica cluster before starting the upgrade process. diff --git a/examples/anti-affinity.yaml b/examples/anti-affinity.yaml index 74d1a15ad..4b611e6e9 100644 --- a/examples/anti-affinity.yaml +++ b/examples/anti-affinity.yaml @@ -26,7 +26,7 @@ spec: topologyKey: "kubernetes.io/hostname" containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 resources: requests: cpu: "10" diff --git a/examples/collect-metrics.yaml b/examples/collect-metrics.yaml index 969ab183d..0a6cd7028 100644 --- a/examples/collect-metrics.yaml +++ b/examples/collect-metrics.yaml @@ -14,7 +14,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/examples/custom-mycnf.yaml b/examples/custom-mycnf.yaml index 38ed887ac..bd4df8540 100644 --- a/examples/custom-mycnf.yaml +++ b/examples/custom-mycnf.yaml @@ -24,7 +24,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/examples/custom-probe.yaml b/examples/custom-probe.yaml index 3aba7a8f1..1a5cc4e22 100644 --- a/examples/custom-probe.yaml +++ b/examples/custom-probe.yaml @@ -10,7 +10,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 # If you want to override the default probes, you cannot override the httpGet. livenessProbe: failureThreshold: 3 diff --git a/examples/guaranteed.yaml b/examples/guaranteed.yaml index d66185d43..93ea7668b 100644 --- a/examples/guaranteed.yaml +++ b/examples/guaranteed.yaml @@ -10,7 +10,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 # By limiting CPU and memory, Pods will have Guaranteed QoS class. # requests can be omitted; it will be set to the same value as limits. resources: diff --git a/examples/loadbalancer.yaml b/examples/loadbalancer.yaml index e3dc48221..130446cb2 100644 --- a/examples/loadbalancer.yaml +++ b/examples/loadbalancer.yaml @@ -18,7 +18,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.34 + image: ghcr.io/cybozu-go/moco/mysql:8.0.35 volumeClaimTemplates: - metadata: name: mysql-data From 271f39880474e02df2006f221095f9751b6cda5b Mon Sep 17 00:00:00 2001 From: yamatcha Date: Mon, 4 Dec 2023 06:59:32 +0000 Subject: [PATCH 3/4] Upgrade tools to MySQL 8.0.35 --- Makefile | 2 +- e2e/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index d656b422e..d544dda5c 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ CTRL_RUNTIME_VERSION := $(shell awk '/sigs.k8s.io\/controller-runtime/ {print su KUSTOMIZE_VERSION = 5.2.1 HELM_VERSION = 3.13.2 CRD_TO_MARKDOWN_VERSION = 0.0.3 -MYSQLSH_VERSION = 8.0.34-1 +MYSQLSH_VERSION = 8.0.35-1 MDBOOK_VERSION = 0.4.36 GORELEASER_VERSION = 1.22.1 YQ_VERSION = 4.40.4 diff --git a/e2e/Makefile b/e2e/Makefile index 81a5f7004..2b6732574 100644 --- a/e2e/Makefile +++ b/e2e/Makefile @@ -1,7 +1,7 @@ KIND_VERSION = 0.20.0 KUBERNETES_VERSION = 1.27.1 CERT_MANAGER_VERSION = 1.13.2 -MYSQL_VERSION = 8.0.34 +MYSQL_VERSION = 8.0.35 KIND := $(dir $(shell pwd))/bin/kind KUBECTL := $(dir $(shell pwd))/bin/kubectl From 0b511716daf9896d6f5b057686aa7d398c2ae0ec Mon Sep 17 00:00:00 2001 From: yamatcha Date: Mon, 4 Dec 2023 07:00:05 +0000 Subject: [PATCH 4/4] Build moco-backup image with MySQL 8.0.35 --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7d4f3404a..74e6eaaac 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,13 +20,13 @@ USER 10000:10000 ENTRYPOINT ["/moco-controller"] # For MySQL binaries -FROM --platform=$TARGETPLATFORM ghcr.io/cybozu-go/moco/mysql:8.0.34.1 as mysql +FROM --platform=$TARGETPLATFORM ghcr.io/cybozu-go/moco/mysql:8.0.35.1 as mysql # the backup image FROM --platform=$TARGETPLATFORM ghcr.io/cybozu/ubuntu:22.04 LABEL org.opencontainers.image.source https://github.com/cybozu-go/moco -ARG MYSQLSH_VERSION=8.0.34-1 +ARG MYSQLSH_VERSION=8.0.35-1 COPY --from=builder /work/moco-backup /moco-backup