Skip to content

Commit

Permalink
Merge pull request #727 from cybozu-go/support-k8s-1.30
Browse files Browse the repository at this point in the history
support k8s 1.30 and 1.31
  • Loading branch information
YZ775 authored Sep 18, 2024
2 parents 315ca63 + 3f003fe commit 742ccbc
Show file tree
Hide file tree
Showing 35 changed files with 1,778 additions and 1,536 deletions.
7 changes: 5 additions & 2 deletions .github/actions/e2e/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ inputs:
k8s-version:
description: 'K8s version'
required: true
name:
description: 'Name of the action'
required: true
runs:
using: "composite"
steps:
Expand All @@ -33,8 +36,8 @@ runs:
working-directory: e2e
if: always()
shell: bash
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: always()
with:
name: logs-${{ inputs.k8s-version }}-${{ inputs.mysql-version }}.tar.gz
name: logs-${{inputs.name}}-${{ inputs.k8s-version }}-${{ inputs.mysql-version }}.tar.gz
path: e2e/logs.tar.gz
2 changes: 1 addition & 1 deletion .github/actions/upgrade/action.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ runs:
working-directory: e2e
if: always()
shell: bash
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: always()
with:
name: logs-upgrade.tar.gz
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build-mysql-container.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
strategy:
matrix:
mysql-version: ${{ fromJson(needs.filter.outputs.mysql-versions) }}
k8s-version: [ "1.29.4" ]
k8s-version: [ "1.31.0" ]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
Expand Down Expand Up @@ -98,7 +98,7 @@ jobs:
- run: make logs
working-directory: e2e
if: always()
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
if: always()
with:
name: logs-${{ matrix.k8s-version }}-${{ matrix.mysql-version }}.tar.gz
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/ci-e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ jobs:
name: Integration tests with MySQL
strategy:
matrix:
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.4.0"]
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.0.39", "8.4.2"]
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Check and output changed files
uses: tj-actions/changed-files@7fc073d92265804a8d4e4982b637dee053daf6c5 # v42.0.7
uses: tj-actions/changed-files@a29e8b565651ce417abb5db7164b4a2ad8b6155c # v44.4.0
id: changed-files
with:
files_ignore: |
Expand All @@ -40,14 +40,14 @@ jobs:
name: Supported Kubernetes versions End-to-End Tests
strategy:
matrix:
mysql-version: ["8.4.0"]
k8s-version: ["1.27.13", "1.28.9", "1.29.4"]
mysql-version: ["8.4.2"]
k8s-version: ["1.29.4", "1.30.4", "1.31.0"]
runs-on:
group: moco
steps:
- uses: actions/checkout@v4
- name: Check and output changed files
uses: tj-actions/changed-files@7fc073d92265804a8d4e4982b637dee053daf6c5 # v42.0.7
uses: tj-actions/changed-files@a29e8b565651ce417abb5db7164b4a2ad8b6155c # v44.4.0
id: changed-files
with:
files_ignore: |
Expand All @@ -57,20 +57,21 @@ jobs:
with:
k8s-version: ${{ matrix.k8s-version }}
mysql-version: ${{ matrix.mysql-version }}
name: k8s-version-e2e
if: steps.changed-files.outputs.any_changed == 'true'

e2e-mysql:
name: Supported MySQL versions End-to-End Tests
strategy:
matrix:
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.4.0"]
k8s-version: ["1.29.4"]
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.0.39", "8.4.2"]
k8s-version: ["1.31.0"]
runs-on:
group: moco
steps:
- uses: actions/checkout@v4
- name: Check and output changed files
uses: tj-actions/changed-files@7fc073d92265804a8d4e4982b637dee053daf6c5 # v42.0.7
uses: tj-actions/changed-files@a29e8b565651ce417abb5db7164b4a2ad8b6155c # v44.4.0
id: changed-files
with:
files_ignore: |
Expand All @@ -81,6 +82,7 @@ jobs:
with:
k8s-version: ${{ matrix.k8s-version }}
mysql-version: ${{ matrix.mysql-version }}
name: mysql-version-e2e

upgrade:
name: Upgrade Test
Expand All @@ -89,7 +91,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Check and output changed files
uses: tj-actions/changed-files@7fc073d92265804a8d4e4982b637dee053daf6c5 # v42.0.7
uses: tj-actions/changed-files@a29e8b565651ce417abb5db7164b4a2ad8b6155c # v44.4.0
id: changed-files
with:
files_ignore: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/helm-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v3
uses: azure/setup-helm@v4
with:
version: v3.10.2

Expand All @@ -30,7 +30,7 @@ jobs:
- name: Packaging the chart
run: helm package ./charts/moco/

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: helm-charts
path: ./moco-*.tgz
Expand All @@ -46,11 +46,11 @@ jobs:
ref: gh-pages

- name: Set up Helm
uses: azure/setup-helm@v3
uses: azure/setup-helm@v4
with:
version: v3.15.0

- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: helm-charts

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/helm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
with:
fetch-depth: 0

- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: 3.7

Expand All @@ -34,12 +34,12 @@ jobs:
run: ct lint --config ct.yaml

- name: Create kind cluster
uses: helm/kind-action@v1.8.0
uses: helm/kind-action@v1.10.0
if: steps.list-changed.outputs.changed == 'true'
with:
version: v0.23.0
node_image: kindest/node:v1.29.4
kubectl_version: v1.29.4
node_image: kindest/node:v1.31.0
kubectl_version: v1.31.0

- name: Apply cert-manager
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/mdbook.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- run: make book
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: book
path: docs/book
Expand All @@ -26,7 +26,7 @@ jobs:
ref: gh-pages
# ignore helm chart index file and chart archive file.
- run: ls | grep -v -E 'index.yaml|moco-.*\.tgz' | xargs rm -rf
- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: book
- run: ls -R
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -100,4 +100,4 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update new version in krew-index
# v0.0.43 https://github.com/rajatjindal/krew-release-bot/releases/tag/v0.0.43
uses: rajatjindal/krew-release-bot@92da038bbf995803124a8e50ebd438b2f37bbbb0
uses: rajatjindal/krew-release-bot@df3eb197549e3568be8b4767eec31c5e8e8e6ad8 # v0.0.46
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
### Changed

- Update fluent-bit image to 3.1.7 [#738](https://github.com/cybozu-go/moco/pull/738)
- Add support for k8s 1.30 and 1.31 [#727](https://github.com/cybozu-go/moco/pull/727)

## [0.23.2] - 2024-07-02

Expand Down
12 changes: 6 additions & 6 deletions DEVELOP.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Edit the following lines in `Dockerfile`:

```
# The tag should be the latest one
FROM ghcr.io/cybozu-go/moco/mysql:8.4.0.1 as mysql
FROM ghcr.io/cybozu-go/moco/mysql:8.4.2.1 as mysql
# See the below description for how to get the version string.
ARG MYSQLSH_VERSION=8.4.0-1
Expand Down Expand Up @@ -84,23 +84,23 @@ MySQL versions appear twice:
name: Integration tests with MySQL
strategy:
matrix:
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.4.0"]
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.0.39", "8.4.2"]
...
# 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.0"]
k8s-version: ["1.27.13", "1.28.9", "1.29.4"]
mysql-version: ["8.4.2"]
k8s-version: ["1.29.4", "1.30.4", "1.31.0"]
...
# Matrix tests for different MySQL versions on the latest supported Kubernetes version.
e2e-mysql:
name: Supported MySQL versions End-to-End Tests
strategy:
matrix:
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.4.0"]
k8s-version: ["1.29.4"]
mysql-version: ["8.0.28", "8.0.36", "8.0.37", "8.0.39", "8.4.2"]
k8s-version: ["1.31.0"]
```
## Updating moco-agent
Expand Down
12 changes: 6 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# Tool versions
CTRL_TOOLS_VERSION=0.15.0
CTRL_TOOLS_VERSION=0.16.2
CTRL_RUNTIME_VERSION := $(shell awk '/sigs.k8s.io\/controller-runtime/ {print substr($$2, 2)}' go.mod)
KUSTOMIZE_VERSION = 5.4.1
HELM_VERSION = 3.15.0
KUSTOMIZE_VERSION = 5.4.3
HELM_VERSION = 3.15.4
CRD_TO_MARKDOWN_VERSION = 0.0.3
MYSQLSH_VERSION = 8.4.0-1
MDBOOK_VERSION = 0.4.37
GORELEASER_VERSION = 1.26.1
YQ_VERSION = 4.44.1
MDBOOK_VERSION = 0.4.40
GORELEASER_VERSION = 1.26.2
YQ_VERSION = 4.44.3
OS_VERSION := $(shell . /etc/os-release; echo $$VERSION_ID)

# Test tools
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ Blog article: [Introducing MOCO, a modern MySQL operator on Kubernetes](https://

## Supported software

- MySQL: 8.0.28, 8.0.36, 8.0.37, 8.4.0
- Kubernetes: 1.27, 1.28, 1.29
- MySQL: 8.0.28, 8.0.36, 8.0.37, 8.0.39, 8.4.2
- Kubernetes: 1.29, 1.30, 1.31

MOCO supports (tests) the LTS releases of MySQL 8.
Innovation releases would probably work. But they are not tested in our CI.
Expand Down Expand Up @@ -74,7 +74,7 @@ spec:
spec:
containers:
- name: mysqld
image: ghcr.io/cybozu-go/moco/mysql:8.4.0
image: ghcr.io/cybozu-go/moco/mysql:8.4.2
volumeClaimTemplates:
- metadata:
name: mysql-data
Expand Down
Loading

0 comments on commit 742ccbc

Please sign in to comment.