Skip to content

Commit 7600d78

Browse files
authored
feat: make compatible with k8s 1.30 [TOOLS][MINOR] (#1687)
1 parent 60e429d commit 7600d78

9 files changed

+67
-45
lines changed

.github/workflows/integration-on-schedule-upgrade.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,4 @@ jobs:
1212
with:
1313
install_profile: upgrade
1414
generate_password: 'yes'
15-
kubernetes_versions: "['1.29']"
15+
kubernetes_versions: "['1.30']"

.github/workflows/integration.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99
kubernetes_versions:
1010
description: "Kubernetes versions (JSON formatted list e.g.: ['1.28'])"
1111
type: string
12-
default: "['1.29']"
12+
default: "['1.30']"
1313
install_profile:
1414
description: Otomi installation profile
1515
default: full
@@ -55,10 +55,10 @@ on:
5555
description: 'Kubernetes version'
5656
type: choice
5757
options:
58-
- "['1.27']"
5958
- "['1.28']"
6059
- "['1.29']"
61-
default: "['1.29']"
60+
- "['1.30']"
61+
default: "['1.30']"
6262
install_profile:
6363
description: Otomi installation profile
6464
default: minimal-with-team

README.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
To install APL, make sure to have a Kubernetes cluster running with at least:
2727

28-
- Version `1.27`, `1.28` or `1.29`
28+
- Version `1.28`, `1.29` or `1.30`
2929
- A node pool with at least **8 vCPU** and **16GB+ RAM** (more resources might be required based on the activated capabilities)
3030
- Calico CNI installed (or any other CNI that supports K8s network policies)
3131
- A default storage class configured
@@ -37,7 +37,6 @@ To install APL, make sure to have a Kubernetes cluster running with at least:
3737
> [!TIP]
3838
> Install APL with DNS to unlock it's full potential. Check [here](https://apl-docs.net) for more info.
3939
40-
4140
Add the Helm repository:
4241

4342
```bash

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@
153153
"test:ts": "ENV_DIR=$PWD/tests/fixtures NODE_ENV=test jest",
154154
"test:ts-cov": "jest --coverage",
155155
"validate-templates": "ENV_DIR=$PWD/tests/fixtures NODE_ENV=test binzx/otomi validate-templates",
156-
"validate-templates:all": "set -e; i=25; while [ $i -le 29 ]; do NODE_ENV=test binzx/otomi validate-templates -k 1.$i; i=$(($i+1)); done",
156+
"validate-templates:all": "set -e; i=25; while [ $i -le 30 ]; do NODE_ENV=test binzx/otomi validate-templates -k 1.$i; i=$(($i+1)); done",
157157
"validate-values": "ENV_DIR=$PWD/tests/fixtures NODE_ENV=test binzx/otomi validate-values",
158158
"bootstrap-dev": "rm -rf /tmp/otomi-bootstrap-dev; CI=1 VALUES_INPUT=$PWD/tests/bootstrap/input.yaml ENV_DIR=/tmp/otomi-bootstrap-dev binzx/otomi bootstrap",
159159
"bootstrap-dev-with-repo": "CI=1 ENV_DIR=/tmp/otomi-bootstrap-dev binzx/otomi bootstrap"

schemas/api-versions/1.30.txt

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
admissionregistration.k8s.io/v1
2+
apiextensions.k8s.io/v1
3+
apiregistration.k8s.io/v1
4+
apps/v1
5+
authentication.k8s.io/v1
6+
authorization.k8s.io/v1
7+
autoscaling/v1
8+
autoscaling/v2
9+
batch/v1
10+
certificates.k8s.io/v1
11+
coordination.k8s.io/v1
12+
discovery.k8s.io/v1
13+
events.k8s.io/v1
14+
flowcontrol.apiserver.k8s.io/v1
15+
flowcontrol.apiserver.k8s.io/v1beta3
16+
networking.k8s.io/v1
17+
node.k8s.io/v1
18+
policy/v1
19+
rbac.authorization.k8s.io/v1
20+
scheduling.k8s.io/v1
21+
storage.k8s.io/v1
22+
v1

schemas/gen-k8s-schemas.sh

+1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ set -ex
1010
# X.Y.Z-local - relative references, useful to avoid the network dependency
1111

1212
declare -a K8S_VERSIONS=(
13+
v1.30.2
1314
v1.29.4
1415
v1.28.3
1516
v1.27.4

schemas/v1.30-standalone.tar.gz

5.7 MB
Binary file not shown.

src/supportedK8sVersions.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{ "supportedK8sVersions": ["1.27", "1.28", "1.29"] }
1+
{ "supportedK8sVersions": ["1.28", "1.29", "1.30"] }

tools/Dockerfile

+37-37
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ FROM ubuntu:20.04 as builder
44
ARG DEBIAN_FRONTEND=noninteractive
55
ARG TARGETARCH
66
# https://github.com/kubernetes/kubernetes/releases
7-
ARG KUBECTL_VERSION=1.29.5
7+
ARG KUBECTL_VERSION=1.30.4
88
# https://github.com/helm/helm/tags
99
ARG HELM_VERSION=3.15.1
1010
# https://github.com/databus23/helm-diff/releases
@@ -33,42 +33,42 @@ WORKDIR /
3333

3434
# Install all required packages in one layer
3535
RUN apt-get update && apt-get install -y \
36-
curl \
37-
coreutils \
38-
apache2-utils \
39-
apt-transport-https \
40-
awscli \
41-
ca-certificates \
42-
gettext \
43-
git \
44-
gnupg \
45-
gnupg2 \
46-
groff \
47-
locales \
48-
nano \
49-
netcat \
50-
openssh-server \
51-
python3 \
52-
python3-pip \
53-
python3-setuptools \
54-
rlwrap \
55-
vim \
56-
rsync && \
57-
rm -rf /var/lib/apt/lists/* && \
58-
locale-gen en_US.UTF-8
36+
curl \
37+
coreutils \
38+
apache2-utils \
39+
apt-transport-https \
40+
awscli \
41+
ca-certificates \
42+
gettext \
43+
git \
44+
gnupg \
45+
gnupg2 \
46+
groff \
47+
locales \
48+
nano \
49+
netcat \
50+
openssh-server \
51+
python3 \
52+
python3-pip \
53+
python3-setuptools \
54+
rlwrap \
55+
vim \
56+
rsync && \
57+
rm -rf /var/lib/apt/lists/* && \
58+
locale-gen en_US.UTF-8
5959

6060
# jq
6161
RUN jq_download_url="https://github.com/jqlang/jq/releases/download/jq-1.7.1/jq-linux-${TARGETARCH}" && \
62-
if [ "${TARGETARCH}" = "amd64" ]; then \
63-
jq_expected_checksum="5942c9b0934e510ee61eb3e30273f1b3fe2590df93933a93d7c58b81d19c8ff5"; \
64-
elif [ "${TARGETARCH}" = "arm64" ]; then \
65-
jq_expected_checksum="4dd2d8a0661df0b22f1bb9a1f9830f06b6f3b8f7d91211a1ef5d7c4f06a8b4a5"; \
66-
else \
67-
echo "Unsupported TARGETARCH: ${TARGETARCH}" >&2; exit 1; \
68-
fi && \
69-
curl -L "${jq_download_url}" --output /usr/bin/jq && \
70-
echo "${jq_expected_checksum} /usr/bin/jq" | sha256sum -c - && \
71-
chmod +x /usr/bin/jq
62+
if [ "${TARGETARCH}" = "amd64" ]; then \
63+
jq_expected_checksum="5942c9b0934e510ee61eb3e30273f1b3fe2590df93933a93d7c58b81d19c8ff5"; \
64+
elif [ "${TARGETARCH}" = "arm64" ]; then \
65+
jq_expected_checksum="4dd2d8a0661df0b22f1bb9a1f9830f06b6f3b8f7d91211a1ef5d7c4f06a8b4a5"; \
66+
else \
67+
echo "Unsupported TARGETARCH: ${TARGETARCH}" >&2; exit 1; \
68+
fi && \
69+
curl -L "${jq_download_url}" --output /usr/bin/jq && \
70+
echo "${jq_expected_checksum} /usr/bin/jq" | sha256sum -c - && \
71+
chmod +x /usr/bin/jq
7272

7373
# yq
7474
COPY --from=mikefarah/yq:4 /usr/bin/yq /usr/bin/yq
@@ -84,9 +84,9 @@ ENV PATH $PATH:$APP_HOME
8484

8585
# kubectl
8686
RUN curl -LO "https://dl.k8s.io/release/v$KUBECTL_VERSION/bin/linux/$TARGETARCH/kubectl" && \
87-
curl -LO "https://dl.k8s.io/release/v$KUBECTL_VERSION/bin/linux/$TARGETARCH/kubectl.sha256" && \
88-
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check && \
89-
chmod +x kubectl
87+
curl -LO "https://dl.k8s.io/release/v$KUBECTL_VERSION/bin/linux/$TARGETARCH/kubectl.sha256" && \
88+
echo "$(cat kubectl.sha256) kubectl" | sha256sum --check && \
89+
chmod +x kubectl
9090

9191
# sops
9292
ADD https://github.com/mozilla/sops/releases/download/v${SOPS_VERSION}/sops-v${SOPS_VERSION}.linux sops

0 commit comments

Comments
 (0)