diff --git a/.github/workflows/build_and_test.yaml b/.github/workflows/build_and_test.yaml index 65ad02a099..033fa84d47 100644 --- a/.github/workflows/build_and_test.yaml +++ b/.github/workflows/build_and_test.yaml @@ -73,7 +73,7 @@ jobs: needs: [build] strategy: matrix: - version: [ v1.22.9, v1.23.6, v1.24.0 ] + version: [ v1.23.6, v1.24.0, v1.25.3 ] steps: - uses: actions/checkout@v3 - uses: ./tools/github-actions/setup-deps diff --git a/docs/latest/intro/compatibility.rst b/docs/latest/intro/compatibility.rst index 4dc06f769e..979c89983e 100644 --- a/docs/latest/intro/compatibility.rst +++ b/docs/latest/intro/compatibility.rst @@ -8,10 +8,12 @@ are listed below; **bold** type indicates the versions of the Envoy Proxy and the Gateway API actually compiled into each Envoy Gateway release. +--------------------------+---------------------+---------------------+----------------------------+ -| Envoy Gateway version | Envoy Proxy version | Gateway API version | Kubernetes minimum version | +| Envoy Gateway version | Envoy Proxy version | Gateway API version | Kubernetes version | +--------------------------+---------------------+---------------------+----------------------------+ | v0.2.0 | **v1.23-latest** | **v0.5.1** | v1.24 | +--------------------------+---------------------+---------------------+----------------------------+ +| latest | **dev-latest** | **v0.5.1** | v1.23.6, v1.24, v1.25 | ++--------------------------+---------------------+---------------------+----------------------------+ .. note:: diff --git a/tools/hack/create-cluster.sh b/tools/hack/create-cluster.sh index 458b734ea5..6333ab60e6 100755 --- a/tools/hack/create-cluster.sh +++ b/tools/hack/create-cluster.sh @@ -4,8 +4,8 @@ set -euo pipefail # Setup default values CLUSTER_NAME=${CLUSTER_NAME:-"envoy-gateway"} -METALLB_VERSION=${METALLB_VERSION:-"v0.12.1"} -KIND_NODE_TAG=${KIND_NODE_TAG:-"v1.24.0"} +METALLB_VERSION=${METALLB_VERSION:-"v0.13.7"} +KIND_NODE_TAG=${KIND_NODE_TAG:-"v1.25.3"} ## Create kind cluster. if [[ -z "${KIND_NODE_TAG}" ]]; then @@ -14,29 +14,38 @@ else tools/bin/kind create cluster --image "kindest/node:${KIND_NODE_TAG}" --name "${CLUSTER_NAME}" fi -## Install metallb. -kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/"${METALLB_VERSION}"/manifests/namespace.yaml +## Install MetalLB. +kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/"${METALLB_VERSION}"/config/manifests/metallb-native.yaml needCreate="$(kubectl get secret -n metallb-system memberlist --no-headers --ignore-not-found -o custom-columns=NAME:.metadata.name)" if [ -z "$needCreate" ]; then kubectl create secret generic -n metallb-system memberlist --from-literal=secretkey="$(openssl rand -base64 128)" fi -kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/"${METALLB_VERSION}"/manifests/metallb.yaml -# Apply config with addresses based on docker network IPAM + +# Wait for MetalLB to become available. +kubectl rollout status -n metallb-system deployment/controller --timeout 5m +kubectl rollout status -n metallb-system daemonset/speaker --timeout 5m + +# Apply config with addresses based on docker network IPAM. subnet=$(docker network inspect kind | jq -r '.[].IPAM.Config[].Subnet | select(contains(":") | not)') # Assume default kind network subnet prefix of 16, and choose addresses in that range. address_first_octets=$(echo "${subnet}" | awk -F. '{printf "%s.%s",$1,$2}') address_range="${address_first_octets}.255.200-${address_first_octets}.255.250" kubectl apply -f - <