diff --git a/.github/workflows/ci-e2e.yaml b/.github/workflows/ci-e2e.yaml index 765d72f5..ff03848a 100644 --- a/.github/workflows/ci-e2e.yaml +++ b/.github/workflows/ci-e2e.yaml @@ -20,7 +20,7 @@ jobs: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.28", "8.0.37", "8.0.39", "8.0.40", "8.4.3"] + mysql-version: ["8.0.28", "8.0.39", "8.0.40", "8.0.41", "8.4.4"] runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -40,7 +40,7 @@ jobs: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.4.3"] + mysql-version: ["8.4.4"] k8s-version: ["1.29.4", "1.30.4", "1.31.0"] runs-on: group: moco @@ -64,7 +64,7 @@ jobs: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.28", "8.0.37", "8.0.39", "8.0.40", "8.4.3"] + mysql-version: ["8.0.28", "8.0.39", "8.0.40", "8.0.41", "8.4.4"] k8s-version: ["1.31.0"] runs-on: group: moco diff --git a/DEVELOP.md b/DEVELOP.md index 2141fbef..66564797 100644 --- a/DEVELOP.md +++ b/DEVELOP.md @@ -54,10 +54,10 @@ Edit the following lines in `Dockerfile`: ``` # The tag should be the latest one -FROM ghcr.io/cybozu-go/moco/mysql:8.4.3.1 as mysql +FROM ghcr.io/cybozu-go/moco/mysql:8.4.4.1 as mysql # See the below description for how to get the version string. -ARG MYSQLSH_VERSION=8.4.3-1 +ARG MYSQLSH_VERSION=8.4.4-1 ``` The MySQL shell debian package can be found in https://dev.mysql.com/downloads/shell/ . @@ -84,14 +84,14 @@ MySQL versions appear twice: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.28", "8.0.37", "8.0.39", "8.0.40", "8.4.3"] + mysql-version: ["8.0.28", "8.0.39", "8.0.40", "8.0.41", "8.4.4"] ... # 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.4.3"] + mysql-version: ["8.4.4"] k8s-version: ["1.29.4", "1.30.4", "1.31.0"] ... # Matrix tests for different MySQL versions on the latest supported Kubernetes version. @@ -99,7 +99,7 @@ MySQL versions appear twice: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.28", "8.0.37", "8.0.39", "8.0.40", "8.4.3"] + mysql-version: ["8.0.28", "8.0.39", "8.0.40", "8.0.41", "8.4.4"] k8s-version: ["1.31.0"] ``` diff --git a/Dockerfile b/Dockerfile index 9de58381..ba50b471 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.4.3.1 as mysql +FROM --platform=$TARGETPLATFORM ghcr.io/cybozu-go/moco/mysql:8.4.4.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.4.3 +ARG MYSQLSH_VERSION=8.4.4 ARG MYSQLSH_GLIBC_VERSION=2.28 ARG TARGETARCH diff --git a/Makefile b/Makefile index 631e1f02..bb6b838e 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ CTRL_RUNTIME_VERSION := $(shell awk '/sigs.k8s.io\/controller-runtime/ {print su KUSTOMIZE_VERSION = 5.4.3 HELM_VERSION = 3.15.4 CRD_TO_MARKDOWN_VERSION = 0.0.3 -MYSQLSH_VERSION = 8.4.3-1 +MYSQLSH_VERSION = 8.4.4-1 MDBOOK_VERSION = 0.4.40 GORELEASER_VERSION = 1.26.2 YQ_VERSION = 4.44.3 diff --git a/README.md b/README.md index 11c77815..3f3047b2 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.28, 8.0.37, 8.0.39, 8.0.40, 8.4.3 +- MySQL: 8.0.28, 8.0.39, 8.0.40, 8.0.41, 8.4.4 - Kubernetes: 1.29, 1.30, 1.31 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/docs/change-pvc-template.md b/docs/change-pvc-template.md index 9294f738..3618ad3e 100644 --- a/docs/change-pvc-template.md +++ b/docs/change-pvc-template.md @@ -93,7 +93,7 @@ For example, the user modifies the `.spec.volumeClaimTemplates` of the MySQLClus spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/docs/custom-mysqld.md b/docs/custom-mysqld.md index b473c109..d63d18b9 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 ``` If you want to build and use your own `mysqld`, read the rest of this document. @@ -35,9 +35,9 @@ On Ubuntu 22.04, you can build the source code as follows: $ sudo apt-get update $ sudo apt-get -y --no-install-recommends install build-essential libssl-dev \ cmake libncurses5-dev libjemalloc-dev libnuma-dev libaio-dev pkg-config -$ curl -fsSL -O https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.3.tar.gz -$ tar -x -z -f mysql-8.4.3.tar.gz -$ cd mysql-8.4.3 +$ curl -fsSL -O https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.4.tar.gz +$ tar -x -z -f mysql-8.4.4.tar.gz +$ cd mysql-8.4.4 $ mkdir bld $ cd bld $ cmake .. -DBUILD_CONFIG=mysql_release -DCMAKE_BUILD_TYPE=Release \ diff --git a/docs/customize-system-container.md b/docs/customize-system-container.md index 931a936e..ea3e184f 100644 --- a/docs/customize-system-container.md +++ b/docs/customize-system-container.md @@ -18,7 +18,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 overwriteContainers: - name: agent resources: diff --git a/docs/designdoc/allow_customize_containers.md b/docs/designdoc/allow_customize_containers.md index d309d771..57035a48 100644 --- a/docs/designdoc/allow_customize_containers.md +++ b/docs/designdoc/allow_customize_containers.md @@ -32,7 +32,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 overwriteContainers: - name: agent resources: @@ -95,7 +95,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 overwriteContainers: agent: resources: diff --git a/docs/designdoc/support_reduce_volume_size.md b/docs/designdoc/support_reduce_volume_size.md index d79da633..1ccf9f2c 100644 --- a/docs/designdoc/support_reduce_volume_size.md +++ b/docs/designdoc/support_reduce_volume_size.md @@ -45,7 +45,7 @@ For example, the user modifies the `.spec.volumeClaimTemplates` of the MySQLClus spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/docs/usage.md b/docs/usage.md index 86420aa4..bf832e0b 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -101,7 +101,7 @@ spec: containers: # At least a container named "mysqld" must be defined. - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 # 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: @@ -209,7 +209,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 # must be the same version as the donor + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 # must be the same version as the donor volumeClaimTemplates: - metadata: name: mysql-data @@ -728,7 +728,7 @@ spec: containers: - name: mysqld # Edit the next line - image: ghcr.io/cybozu-go/moco/mysql:8.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 ``` You are advised to make backups and/or create a replica cluster before starting the upgrade process. diff --git a/e2e/Makefile b/e2e/Makefile index 09dd3f4d..580a581b 100644 --- a/e2e/Makefile +++ b/e2e/Makefile @@ -1,7 +1,7 @@ KIND_VERSION = 0.23.0 KUBERNETES_VERSION = 1.31.0 CERT_MANAGER_VERSION = 1.15.3 -MYSQL_VERSION = 8.4.3 +MYSQL_VERSION = 8.4.4 KIND := $(dir $(shell pwd))/bin/kind KUBECTL := $(dir $(shell pwd))/bin/kubectl diff --git a/e2e/upgrade_test.go b/e2e/upgrade_test.go index cd319cda..b8931532 100644 --- a/e2e/upgrade_test.go +++ b/e2e/upgrade_test.go @@ -20,7 +20,7 @@ var upgradeYAML string const ( mysqlVersionOld = "8.0.28" - mysqlVersionNew = "8.4.3" + mysqlVersionNew = "8.4.4" ) var _ = Context("upgrade", Ordered, func() { diff --git a/examples/anti-affinity.yaml b/examples/anti-affinity.yaml index 0b0e4a8b..785b1901 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 resources: requests: cpu: "10" diff --git a/examples/collect-metrics.yaml b/examples/collect-metrics.yaml index 8f308ca0..730892dc 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/examples/custom-mycnf.yaml b/examples/custom-mycnf.yaml index 7bf42f46..448adf74 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data diff --git a/examples/custom-probe.yaml b/examples/custom-probe.yaml index 8c9a6a9f..18e17b5b 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 # 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 d294d760..d699222e 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 # 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 3f9c9257..f4e022cd 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.4.3 + image: ghcr.io/cybozu-go/moco/mysql:8.4.4 volumeClaimTemplates: - metadata: name: mysql-data