@@ -248,9 +248,9 @@ presubmits:
248
248
major=$(echo "$revision" | sed -e 's/^v\([0-9]*\).*/\1/')
249
249
minor=$(echo "$revision" | sed -e 's/^v[0-9]*\.\([0-9]*\).*/\1/')
250
250
previous_minor=$((minor - 1))
251
- # TODO: use dl.k8s.io/ release for presubmits.
252
- previous=$(curl --silent -L "https://dl.k8s.io/ci/latest -$major.$previous_minor.txt" )
253
- curl --silent -L "https://dl.k8s.io/ci /$previous/kubernetes-server-linux-amd64.tar.gz" | tar zxOf - kubernetes/server/bin/kubelet >/tmp/kubelet
251
+ # Test with the lastest stable release to avoid breaking presubmits because of unrelated issues in a release candidate .
252
+ previous=$(curl --silent -L "https://dl.k8s.io/release/stable -$major.$previous_minor.txt" )
253
+ curl --silent -L "https://dl.k8s.io/release /$previous/kubernetes-server-linux-amd64.tar.gz" | tar zxOf - kubernetes/server/bin/kubelet >/tmp/kubelet
254
254
chmod a+rx /tmp/kubelet
255
255
/tmp/kubelet --version
256
256
worker_nodes=$(kind get nodes | grep worker)
@@ -259,9 +259,15 @@ presubmits:
259
259
docker exec $n systemctl restart kubelet
260
260
done
261
261
262
- # We might need support for disabling tests which need a recent kubelet. We'll see...
262
+ # We need support for disabling tests which need a recent kubelet.
263
+ # If a test is labeled with `KubeletMinVersion:1.34`, then it cannot run
264
+ # when the deployed kubelet is 1.32. This is enforced by
265
+ # generating `KubeletMinVersion: isSubsetOf { 1.33, 1.34 }`, i.e.
266
+ # not including the actual kubelet version and anything older
267
+ # in an allow list.
268
+ kubelet_label_filter="&& KubeletMinVersion: isSubsetOf { $( for v in $(seq $((previous_minor + 1)) $((minor - 1))); do echo "1.$v, "; done)1.$minor }"
263
269
264
- KUBECONFIG=${HOME}/.kube/config ${ginkgo} run --nodes=8 --timeout=24h --silence-skips --force-newlines --no-color --label-filter="DRA && Feature: isSubsetOf { OffByDefault, DynamicResourceAllocation } && !Alpha && !Flaky && !Slow" ${e2e_test} -- -provider=local -report-dir="${ARTIFACTS}" -report-complete-ginkgo -report-complete-junit &
270
+ KUBECONFIG=${HOME}/.kube/config ${ginkgo} run --nodes=8 --timeout=24h --silence-skips --force-newlines --no-color --label-filter="DRA && Feature: isSubsetOf { OffByDefault, DynamicResourceAllocation }$kubelet_label_filter && !Alpha && !Flaky && !Slow" ${e2e_test} -- -provider=local -report-dir="${ARTIFACTS}" -report-complete-ginkgo -report-complete-junit &
265
271
GINKGO_E2E_PID=$!
266
272
wait "${GINKGO_E2E_PID}"
267
273
# docker-in-docker needs privileged mode
@@ -350,9 +356,9 @@ presubmits:
350
356
major=$(echo "$revision" | sed -e 's/^v\([0-9]*\).*/\1/')
351
357
minor=$(echo "$revision" | sed -e 's/^v[0-9]*\.\([0-9]*\).*/\1/')
352
358
previous_minor=$((minor - 2))
353
- # TODO: use dl.k8s.io/ release for presubmits.
354
- previous=$(curl --silent -L "https://dl.k8s.io/ci/latest -$major.$previous_minor.txt" )
355
- curl --silent -L "https://dl.k8s.io/ci /$previous/kubernetes-server-linux-amd64.tar.gz" | tar zxOf - kubernetes/server/bin/kubelet >/tmp/kubelet
359
+ # Test with the lastest stable release to avoid breaking presubmits because of unrelated issues in a release candidate .
360
+ previous=$(curl --silent -L "https://dl.k8s.io/release/stable -$major.$previous_minor.txt" )
361
+ curl --silent -L "https://dl.k8s.io/release /$previous/kubernetes-server-linux-amd64.tar.gz" | tar zxOf - kubernetes/server/bin/kubelet >/tmp/kubelet
356
362
chmod a+rx /tmp/kubelet
357
363
/tmp/kubelet --version
358
364
worker_nodes=$(kind get nodes | grep worker)
@@ -361,9 +367,15 @@ presubmits:
361
367
docker exec $n systemctl restart kubelet
362
368
done
363
369
364
- # We might need support for disabling tests which need a recent kubelet. We'll see...
370
+ # We need support for disabling tests which need a recent kubelet.
371
+ # If a test is labeled with `KubeletMinVersion:1.34`, then it cannot run
372
+ # when the deployed kubelet is 1.32. This is enforced by
373
+ # generating `KubeletMinVersion: isSubsetOf { 1.33, 1.34 }`, i.e.
374
+ # not including the actual kubelet version and anything older
375
+ # in an allow list.
376
+ kubelet_label_filter="&& KubeletMinVersion: isSubsetOf { $( for v in $(seq $((previous_minor + 1)) $((minor - 1))); do echo "1.$v, "; done)1.$minor }"
365
377
366
- KUBECONFIG=${HOME}/.kube/config ${ginkgo} run --nodes=8 --timeout=24h --silence-skips --force-newlines --no-color --label-filter="DRA && Feature: isSubsetOf { OffByDefault, DynamicResourceAllocation } && !Alpha && !Flaky && !Slow" ${e2e_test} -- -provider=local -report-dir="${ARTIFACTS}" -report-complete-ginkgo -report-complete-junit &
378
+ KUBECONFIG=${HOME}/.kube/config ${ginkgo} run --nodes=8 --timeout=24h --silence-skips --force-newlines --no-color --label-filter="DRA && Feature: isSubsetOf { OffByDefault, DynamicResourceAllocation }$kubelet_label_filter && !Alpha && !Flaky && !Slow" ${e2e_test} -- -provider=local -report-dir="${ARTIFACTS}" -report-complete-ginkgo -report-complete-junit &
367
379
GINKGO_E2E_PID=$!
368
380
wait "${GINKGO_E2E_PID}"
369
381
# docker-in-docker needs privileged mode
0 commit comments