Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support k8s 1.30 and 1.31 #727

Merged
merged 14 commits into from
Sep 18, 2024
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