From 6efc4ae4a67842acf8109af1909b5ce5ea8a2b5c Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Wed, 15 May 2024 08:06:15 +0000 Subject: [PATCH 1/6] update dependency --- .github/workflows/build-mysql-container.yaml | 2 +- .github/workflows/ci-e2e.yaml | 10 +++++----- .github/workflows/ci.yaml | 4 ++-- .github/workflows/helm.yaml | 6 +++--- .github/workflows/release.yaml | 2 +- .github/workflows/weekly.yaml | 10 +++++----- Makefile | 6 +++--- e2e/Makefile | 6 +++--- go.mod | 2 +- kustomization.yaml | 2 +- 10 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.github/workflows/build-mysql-container.yaml b/.github/workflows/build-mysql-container.yaml index 7a84ef5e4..e8e3849ae 100644 --- a/.github/workflows/build-mysql-container.yaml +++ b/.github/workflows/build-mysql-container.yaml @@ -48,7 +48,7 @@ jobs: k8s-version: [ "1.27.1" ] steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true diff --git a/.github/workflows/ci-e2e.yaml b/.github/workflows/ci-e2e.yaml index 122a4a211..040038917 100644 --- a/.github/workflows/ci-e2e.yaml +++ b/.github/workflows/ci-e2e.yaml @@ -24,7 +24,7 @@ jobs: name: Integration tests with MySQL strategy: matrix: - mysql-version: ["8.0.28", "8.0.34", "8.0.35"] + mysql-version: ["8.0.35", "8.0.36", "8.0.37"] runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -44,8 +44,8 @@ jobs: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.35"] - k8s-version: ["1.25.9", "1.26.4", "1.27.1"] + mysql-version: ["8.0.37"] + k8s-version: ["1.28.9", "1.29.4", "1.30.0"] runs-on: group: moco steps: @@ -67,8 +67,8 @@ jobs: name: Supported MySQL versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.28", "8.0.34", "8.0.35"] - k8s-version: ["1.27.1"] + mysql-version: ["8.0.35", "8.0.36", "8.0.37"] + k8s-version: ["1.30.0"] runs-on: group: moco steps: diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 0ecb2458e..93120c499 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true @@ -30,7 +30,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true diff --git a/.github/workflows/helm.yaml b/.github/workflows/helm.yaml index a1891dac1..357777ba2 100644 --- a/.github/workflows/helm.yaml +++ b/.github/workflows/helm.yaml @@ -37,9 +37,9 @@ jobs: uses: helm/kind-action@v1.8.0 if: steps.list-changed.outputs.changed == 'true' with: - version: v0.19.0 - node_image: kindest/node:v1.27.1 - kubectl_version: v1.27.1 + version: v0.23.0 + node_image: kindest/node:v1.30.0 + kubectl_version: v1.30.0 - name: Apply cert-manager run: | diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 60cfbf7d9..45dd86651 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -87,7 +87,7 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod - name: GoReleaser diff --git a/.github/workflows/weekly.yaml b/.github/workflows/weekly.yaml index 1a700c895..23eec6749 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", "8.0.35"] + 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", "8.0.36", "8.0.37"] runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -29,8 +29,8 @@ jobs: name: Supported Kubernetes versions End-to-End Tests strategy: matrix: - mysql-version: ["8.0.35"] - k8s-version: ["1.25.9", "1.26.4", "1.27.1"] + mysql-version: ["8.0.37"] + k8s-version: ["1.28.9", "1.29.4", "1.30.0"] runs-on: group: moco steps: @@ -44,8 +44,8 @@ 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", "8.0.35"] - k8s-version: ["1.27.1"] + 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", "8.0.36", "8.0.37"] + k8s-version: ["1.30.0"] runs-on: group: moco steps: diff --git a/Makefile b/Makefile index d544dda5c..0ad11c701 100644 --- a/Makefile +++ b/Makefile @@ -1,12 +1,12 @@ # Tool versions -CTRL_TOOLS_VERSION=0.13.0 +CTRL_TOOLS_VERSION=0.15.0 CTRL_RUNTIME_VERSION := $(shell awk '/sigs.k8s.io\/controller-runtime/ {print substr($$2, 2)}' go.mod) KUSTOMIZE_VERSION = 5.2.1 HELM_VERSION = 3.13.2 CRD_TO_MARKDOWN_VERSION = 0.0.3 -MYSQLSH_VERSION = 8.0.35-1 +MYSQLSH_VERSION = 8.0.37-1 MDBOOK_VERSION = 0.4.36 -GORELEASER_VERSION = 1.22.1 +GORELEASER_VERSION = 1.26.0 YQ_VERSION = 4.40.4 OS_VERSION := $(shell . /etc/os-release; echo $$VERSION_ID) diff --git a/e2e/Makefile b/e2e/Makefile index 2b6732574..c8666df15 100644 --- a/e2e/Makefile +++ b/e2e/Makefile @@ -1,7 +1,7 @@ -KIND_VERSION = 0.20.0 -KUBERNETES_VERSION = 1.27.1 +KIND_VERSION = 0.23.0 +KUBERNETES_VERSION = 1.30.0 CERT_MANAGER_VERSION = 1.13.2 -MYSQL_VERSION = 8.0.35 +MYSQL_VERSION = 8.0.37 KIND := $(dir $(shell pwd))/bin/kind KUBECTL := $(dir $(shell pwd))/bin/kubectl diff --git a/go.mod b/go.mod index 8b34ad48c..a99978a2e 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/cybozu-go/moco -go 1.21 +go 1.22.3 require ( cloud.google.com/go/storage v1.35.1 diff --git a/kustomization.yaml b/kustomization.yaml index eeea44953..f90841739 100644 --- a/kustomization.yaml +++ b/kustomization.yaml @@ -3,4 +3,4 @@ resources: images: - name: ghcr.io/cybozu-go/moco - newTag: 0.20.2 + newTag: 0.20.3 From e0ad61362e2a0902141d09dd946f5df805ab3808 Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Thu, 16 May 2024 01:47:28 +0000 Subject: [PATCH 2/6] run contorller-gen and add new crd files --- charts/moco/templates/generated/crds/moco_crds.yaml | 4 ++-- config/crd/bases/moco.cybozu.com_backuppolicies.yaml | 2 +- config/crd/bases/moco.cybozu.com_mysqlclusters.yaml | 2 +- ...stomresourcedefinition_backuppolicies.moco.cybozu.com.yaml | 2 +- ...ustomresourcedefinition_mysqlclusters.moco.cybozu.com.yaml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/charts/moco/templates/generated/crds/moco_crds.yaml b/charts/moco/templates/generated/crds/moco_crds.yaml index 4e0e7ce54..ef9c2b234 100644 --- a/charts/moco/templates/generated/crds/moco_crds.yaml +++ b/charts/moco/templates/generated/crds/moco_crds.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 labels: app.kubernetes.io/managed-by: '{{ .Release.Service }}' app.kubernetes.io/name: '{{ include "moco.name" . }}' @@ -2057,7 +2057,7 @@ kind: CustomResourceDefinition metadata: annotations: cert-manager.io/inject-ca-from: '{{ .Release.Namespace }}/moco-serving-cert' - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 labels: app.kubernetes.io/managed-by: '{{ .Release.Service }}' app.kubernetes.io/name: '{{ include "moco.name" . }}' diff --git a/config/crd/bases/moco.cybozu.com_backuppolicies.yaml b/config/crd/bases/moco.cybozu.com_backuppolicies.yaml index 09a5a3ac5..bd4196b24 100644 --- a/config/crd/bases/moco.cybozu.com_backuppolicies.yaml +++ b/config/crd/bases/moco.cybozu.com_backuppolicies.yaml @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 name: backuppolicies.moco.cybozu.com spec: group: moco.cybozu.com diff --git a/config/crd/bases/moco.cybozu.com_mysqlclusters.yaml b/config/crd/bases/moco.cybozu.com_mysqlclusters.yaml index a08180d1a..c42d86e8d 100644 --- a/config/crd/bases/moco.cybozu.com_mysqlclusters.yaml +++ b/config/crd/bases/moco.cybozu.com_mysqlclusters.yaml @@ -3,7 +3,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 name: mysqlclusters.moco.cybozu.com spec: group: moco.cybozu.com diff --git a/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_backuppolicies.moco.cybozu.com.yaml b/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_backuppolicies.moco.cybozu.com.yaml index 2cef35f4a..bd873719c 100644 --- a/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_backuppolicies.moco.cybozu.com.yaml +++ b/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_backuppolicies.moco.cybozu.com.yaml @@ -2,7 +2,7 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 name: backuppolicies.moco.cybozu.com spec: group: moco.cybozu.com diff --git a/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_mysqlclusters.moco.cybozu.com.yaml b/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_mysqlclusters.moco.cybozu.com.yaml index bc00cbb23..a2bfe9268 100644 --- a/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_mysqlclusters.moco.cybozu.com.yaml +++ b/config/crd/tests/apiextensions.k8s.io_v1_customresourcedefinition_mysqlclusters.moco.cybozu.com.yaml @@ -3,7 +3,7 @@ kind: CustomResourceDefinition metadata: annotations: cert-manager.io/inject-ca-from: $(CERTIFICATE_NAMESPACE)/$(CERTIFICATE_NAME) - controller-gen.kubebuilder.io/version: v0.13.0 + controller-gen.kubebuilder.io/version: v0.15.0 name: mysqlclusters.moco.cybozu.com spec: group: moco.cybozu.com From 4521401f33ce0c1e39907d7a027ffef1a2708164 Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Thu, 16 May 2024 04:55:05 +0000 Subject: [PATCH 3/6] update k8s version in build-mysql-container --- .github/workflows/build-mysql-container.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-mysql-container.yaml b/.github/workflows/build-mysql-container.yaml index e8e3849ae..e288799ca 100644 --- a/.github/workflows/build-mysql-container.yaml +++ b/.github/workflows/build-mysql-container.yaml @@ -45,7 +45,7 @@ jobs: strategy: matrix: mysql-version: ${{ fromJson(needs.filter.outputs.mysql-versions) }} - k8s-version: [ "1.27.1" ] + k8s-version: [ "1.30.0" ] steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 From d6fa199520cbb1c605fd555a28a5b391ada92994 Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Thu, 16 May 2024 08:51:19 +0000 Subject: [PATCH 4/6] update dependency tool in Makefiles --- Makefile | 10 +++++----- e2e/Makefile | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 0ad11c701..ea88826e6 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,13 @@ # Tool versions CTRL_TOOLS_VERSION=0.15.0 CTRL_RUNTIME_VERSION := $(shell awk '/sigs.k8s.io\/controller-runtime/ {print substr($$2, 2)}' go.mod) -KUSTOMIZE_VERSION = 5.2.1 -HELM_VERSION = 3.13.2 +KUSTOMIZE_VERSION = 5.4.1 +HELM_VERSION = 3.15.0 CRD_TO_MARKDOWN_VERSION = 0.0.3 MYSQLSH_VERSION = 8.0.37-1 -MDBOOK_VERSION = 0.4.36 -GORELEASER_VERSION = 1.26.0 -YQ_VERSION = 4.40.4 +MDBOOK_VERSION = 0.4.37 +GORELEASER_VERSION = 1.26.1 +YQ_VERSION = 4.44.1 OS_VERSION := $(shell . /etc/os-release; echo $$VERSION_ID) # Test tools diff --git a/e2e/Makefile b/e2e/Makefile index c8666df15..6d5ead534 100644 --- a/e2e/Makefile +++ b/e2e/Makefile @@ -1,6 +1,6 @@ KIND_VERSION = 0.23.0 KUBERNETES_VERSION = 1.30.0 -CERT_MANAGER_VERSION = 1.13.2 +CERT_MANAGER_VERSION = 1.14.5 MYSQL_VERSION = 8.0.37 KIND := $(dir $(shell pwd))/bin/kind From e8e597dd67cef3e8898330f6e4566c31a40439ec Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Thu, 16 May 2024 11:46:45 +0000 Subject: [PATCH 5/6] update Ubuntu 22.04 under .github/workflow --- .github/actions/dbtest/action.yaml | 2 +- .github/actions/e2e/action.yaml | 2 +- .github/actions/upgrade/action.yaml | 2 +- .github/workflows/build-mysql-container.yaml | 2 +- .github/workflows/ci.yaml | 4 ++-- .github/workflows/helm-release.yaml | 6 +++--- .github/workflows/helm.yaml | 2 +- .github/workflows/mdbook.yaml | 4 ++-- .github/workflows/release.yaml | 2 +- 9 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/actions/dbtest/action.yaml b/.github/actions/dbtest/action.yaml index b7c80b570..8f8dcc6cd 100644 --- a/.github/actions/dbtest/action.yaml +++ b/.github/actions/dbtest/action.yaml @@ -9,7 +9,7 @@ inputs: runs: using: "composite" steps: - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true diff --git a/.github/actions/e2e/action.yaml b/.github/actions/e2e/action.yaml index 6cb4cafac..f385992a5 100644 --- a/.github/actions/e2e/action.yaml +++ b/.github/actions/e2e/action.yaml @@ -11,7 +11,7 @@ inputs: runs: using: "composite" steps: - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true diff --git a/.github/actions/upgrade/action.yaml b/.github/actions/upgrade/action.yaml index c25f94174..9382449a4 100644 --- a/.github/actions/upgrade/action.yaml +++ b/.github/actions/upgrade/action.yaml @@ -4,7 +4,7 @@ description: 'An action to run Upgrade Tests' runs: using: "composite" steps: - - uses: actions/setup-go@v4 + - uses: actions/setup-go@v5 with: go-version-file: go.mod cache: true diff --git a/.github/workflows/build-mysql-container.yaml b/.github/workflows/build-mysql-container.yaml index e288799ca..1fc8e49f8 100644 --- a/.github/workflows/build-mysql-container.yaml +++ b/.github/workflows/build-mysql-container.yaml @@ -16,7 +16,7 @@ on: jobs: filter: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 outputs: mysql-versions: ${{ steps.filter.outputs.mysql-versions }} steps: diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 93120c499..71a36b4eb 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -16,7 +16,7 @@ env: jobs: build: name: Build binaries - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 @@ -27,7 +27,7 @@ jobs: test: name: Small tests - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 diff --git a/.github/workflows/helm-release.yaml b/.github/workflows/helm-release.yaml index 6d4bd5bfb..ed0b88e5e 100644 --- a/.github/workflows/helm-release.yaml +++ b/.github/workflows/helm-release.yaml @@ -7,7 +7,7 @@ on: jobs: build: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout uses: actions/checkout@v4 @@ -38,7 +38,7 @@ jobs: publish: name: Publish charts on GitHub Pages - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 needs: build steps: - uses: actions/checkout@v4 @@ -48,7 +48,7 @@ jobs: - name: Set up Helm uses: azure/setup-helm@v3 with: - version: v3.10.2 + version: v3.15.0 - uses: actions/download-artifact@v3 with: diff --git a/.github/workflows/helm.yaml b/.github/workflows/helm.yaml index 357777ba2..6a587adab 100644 --- a/.github/workflows/helm.yaml +++ b/.github/workflows/helm.yaml @@ -8,7 +8,7 @@ on: jobs: lint-test: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout diff --git a/.github/workflows/mdbook.yaml b/.github/workflows/mdbook.yaml index c6271fba2..e8f60faef 100644 --- a/.github/workflows/mdbook.yaml +++ b/.github/workflows/mdbook.yaml @@ -7,7 +7,7 @@ on: jobs: build: name: Build book - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - run: make book @@ -18,7 +18,7 @@ jobs: retention-days: 1 publish: name: Publish book on GitHub Pages - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 needs: build steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 45dd86651..c1ef9a066 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -6,7 +6,7 @@ on: jobs: build-moco: name: Push Container Image - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 - name: Set up QEMU From 869a47cb7f9a566786205c3f8b99e7144391c0be Mon Sep 17 00:00:00 2001 From: Maho Takara Date: Thu, 16 May 2024 23:58:29 +0000 Subject: [PATCH 6/6] Add support ver in README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index c42e17b61..0b2e49b38 100644 --- a/README.md +++ b/README.md @@ -26,8 +26,8 @@ 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, 8.0.35 -- Kubernetes: 1.25, 1.26, 1.27 +- 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, 8.0.36, 8.0.37 +- Kubernetes: 1.28, 1.29, 1.30 MOCO supports (tests) the LTS releases of MySQL 8. Innovation releases would probably work. But they are not tested in our CI. @@ -74,7 +74,7 @@ spec: spec: containers: - name: mysqld - image: ghcr.io/cybozu-go/moco/mysql:8.0.35 + image: ghcr.io/cybozu-go/moco/mysql:8.0.37 volumeClaimTemplates: - metadata: name: mysql-data