From 75a2ab9597961d706d7395ab8155d1b596c729eb Mon Sep 17 00:00:00 2001 From: Brad Davidson Date: Wed, 8 May 2024 19:15:51 +0000 Subject: [PATCH] Update CI tests Bump k3s to v1.29.4+k3s1, and add basic sig-api-machinery e2e against sqlite Signed-off-by: Brad Davidson --- scripts/test-conformance | 19 +++++++++++++++++++ scripts/test-helpers | 9 ++++++--- scripts/test-runner | 1 + 3 files changed, 26 insertions(+), 3 deletions(-) create mode 100755 scripts/test-conformance diff --git a/scripts/test-conformance b/scripts/test-conformance new file mode 100755 index 00000000..1831698f --- /dev/null +++ b/scripts/test-conformance @@ -0,0 +1,19 @@ +#!/bin/bash +set -e +cd $(dirname $0)/.. + +# sig-api-machinery e2e tests take about 20 minutes to complete. +# Only run conformance on sqlite, to reduce CI run time. +if [[ "$LABEL" != "sqlite" ]]; then + echo "Skipping conformance" + exit +fi + +test-conformance() { + local name=$(cat $TEST_DIR/servers/0/metadata/name) + local version=$(docker exec $name k3s --version | grep -Eo 'v[0-9]+\.[0-9]+\.[0-9]+') + docker run --rm -it -v "$KUBECONFIG:/root/.kube/config" -e "KUBECONFIG=/root/.kube/config" -e "E2E_FOCUS=sig-api-machinery" -e "E2E_SKIP=StorageVersionAPI|Slow|Flaky" registry.k8s.io/conformance:$version +} + +echo "Running conformance tests" +test-conformance diff --git a/scripts/test-helpers b/scripts/test-helpers index ff8ba8a8..e0673384 100755 --- a/scripts/test-helpers +++ b/scripts/test-helpers @@ -218,9 +218,10 @@ provision-server() { -p $testPort:6443 \ -e K3S_DEBUG=true \ -e K3S_DATASTORE_ENDPOINT=$K3S_DATASTORE_ENDPOINT \ - ${K3S_IMAGE:-docker.io/rancher/k3s:v1.26.9-k3s1} server \ + ${K3S_IMAGE:-docker.io/rancher/k3s:v1.29.4-k3s1} server \ + --kube-apiserver-arg=feature-gates=WatchList=true \ --disable=coredns,servicelb,traefik,local-storage,metrics-server \ - --disable-agent --disable-scheduler --disable-cloud-controller --disable-kube-proxy --disable-network-policy + --disable-kube-proxy --disable-network-policy local ip=$(docker container inspect --format '{{ .NetworkSettings.IPAddress }}' $name | tee $TEST_DIR/servers/$count/metadata/ip) local port=$(docker container inspect --format '{{range $k, $v := .NetworkSettings.Ports}}{{printf "%s\n" $k}}{{end}}' $name | head -n 1 | cut -d/ -f1 | tee $TEST_DIR/servers/$count/metadata/port) @@ -248,7 +249,9 @@ provision-kine() { docker container run \ -d --name $name \ $KINE_ENV \ - $KINE_IMAGE --endpoint $KINE_ENDPOINT + $KINE_IMAGE \ + --watch-progress-notify-interval=5s \ + --endpoint $KINE_ENDPOINT local ip=$(docker container inspect --format '{{.NetworkSettings.IPAddress}}' $name | tee $TEST_DIR/kine/$count/metadata/ip) local port=$(docker container inspect --format '{{range $k, $v := .NetworkSettings.Ports}}{{printf "%s\n" $k}}{{end}}' $name | head -n 1 | cut -d/ -f1 | tee $TEST_DIR/kine/$count/metadata/port) diff --git a/scripts/test-runner b/scripts/test-runner index 0417df8a..ff255c50 100755 --- a/scripts/test-runner +++ b/scripts/test-runner @@ -13,3 +13,4 @@ provision-database $DB_ARGS start-test $@ ./scripts/test-load +./scripts/test-conformance