mirror of https://github.com/k3s-io/k3s
commit
3bbf55d38b
|
@ -21,25 +21,6 @@ set -o errexit
|
|||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
# Join all args with |
|
||||
# Example: join_regex_allow_empty a b "c d" e => a|b|c d|e
|
||||
function join_regex_allow_empty() {
|
||||
local IFS="|"
|
||||
echo "$*"
|
||||
}
|
||||
|
||||
# Join all args with |, butin case of empty result prints "EMPTY\sSET" instead.
|
||||
# Example: join_regex_no_empty a b "c d" e => a|b|c d|e
|
||||
# join_regex_no_empty => EMPTY\sSET
|
||||
function join_regex_no_empty() {
|
||||
local IFS="|"
|
||||
if [ -z "$*" ]; then
|
||||
echo "EMPTY\sSET"
|
||||
else
|
||||
echo "$*"
|
||||
fi
|
||||
}
|
||||
|
||||
# Properly configure globals for an upgrade step in a GKE or GCE upgrade suite
|
||||
#
|
||||
# These suites:
|
||||
|
@ -54,9 +35,6 @@ function join_regex_no_empty() {
|
|||
# Assumes globals:
|
||||
# $JOB_NAME
|
||||
# $KUBERNETES_PROVIDER
|
||||
# $GCE_DEFAULT_SKIP_TESTS
|
||||
# $GCE_FLAKY_TESTS
|
||||
# $GCE_SLOW_TESTS
|
||||
#
|
||||
# Args:
|
||||
# $1 old_version: the version to deploy a cluster at, and old e2e tests to run
|
||||
|
@ -80,17 +58,6 @@ function configure_upgrade_step() {
|
|||
}
|
||||
local -r step="${BASH_REMATCH[1]}"
|
||||
|
||||
local -r gce_test_args="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"
|
||||
local -r gke_test_args="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"
|
||||
|
||||
if [[ "${KUBERNETES_PROVIDER}" == "gce" ]]; then
|
||||
KUBE_GCE_INSTANCE_PREFIX="$cluster_name"
|
||||
NUM_NODES=5
|
||||
|
@ -149,12 +116,6 @@ function configure_upgrade_step() {
|
|||
E2E_UP="false"
|
||||
E2E_TEST="true"
|
||||
E2E_DOWN="false"
|
||||
|
||||
if [[ "${KUBERNETES_PROVIDER}" == "gke" ]]; then
|
||||
GINKGO_TEST_ARGS="${gke_test_args}"
|
||||
else
|
||||
GINKGO_TEST_ARGS="${gce_test_args}"
|
||||
fi
|
||||
;;
|
||||
|
||||
step5)
|
||||
|
@ -178,12 +139,6 @@ function configure_upgrade_step() {
|
|||
E2E_UP="false"
|
||||
E2E_TEST="true"
|
||||
E2E_DOWN="false"
|
||||
|
||||
if [[ "${KUBERNETES_PROVIDER}" == "gke" ]]; then
|
||||
GINKGO_TEST_ARGS="${gke_test_args}"
|
||||
else
|
||||
GINKGO_TEST_ARGS="${gce_test_args}"
|
||||
fi
|
||||
;;
|
||||
|
||||
step7)
|
||||
|
@ -198,12 +153,6 @@ function configure_upgrade_step() {
|
|||
E2E_UP="false"
|
||||
E2E_TEST="true"
|
||||
E2E_DOWN="true"
|
||||
|
||||
if [[ "${KUBERNETES_PROVIDER}" == "gke" ]]; then
|
||||
GINKGO_TEST_ARGS="${gke_test_args}"
|
||||
else
|
||||
GINKGO_TEST_ARGS="${gce_test_args}"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
@ -263,41 +212,6 @@ fi
|
|||
# When 1.2.0-beta.0 comes out, e.g., this will become "ci/latest-1.2"
|
||||
CURRENT_RELEASE_PUBLISHED_VERSION="ci/latest-1.1"
|
||||
|
||||
# Specialized tests which should be skipped by default for projects.
|
||||
GCE_DEFAULT_SKIP_TESTS=(
|
||||
"\[Skipped\]"
|
||||
"\[Feature:.+\]"
|
||||
)
|
||||
|
||||
# Tests which kills or restarts components and/or nodes.
|
||||
DISRUPTIVE_TESTS=(
|
||||
"\[Disruptive\]"
|
||||
)
|
||||
|
||||
# The following tests are known to be flaky, and are thus run only in their own
|
||||
# -flaky- build variants.
|
||||
GCE_FLAKY_TESTS=(
|
||||
"\[Flaky\]"
|
||||
)
|
||||
|
||||
# The following tests are known to be slow running (> 2 min), and are
|
||||
# thus run only in their own -slow- build variants. Note that tests
|
||||
# can be slow by explicit design (e.g. some soak tests), or slow
|
||||
# through poor implementation. Please indicate which applies in the
|
||||
# comments below, and for poorly implemented tests, please quote the
|
||||
# issue number tracking speed improvements.
|
||||
GCE_SLOW_TESTS=(
|
||||
"\[Slow\]"
|
||||
)
|
||||
|
||||
# Tests which are not able to be run in parallel.
|
||||
#
|
||||
# TODO(ihmccreery) I'd like to get these combined with DISRUPTIVE_TESTS.
|
||||
GCE_PARALLEL_SKIP_TESTS=(
|
||||
"\[Serial\]"
|
||||
"\[Disruptive\]"
|
||||
)
|
||||
|
||||
# Define environment variables based on the Jenkins project name.
|
||||
# NOTE: Not all jobs are defined here. The hack/jenkins/e2e.sh in master and
|
||||
# release branches defines relevant jobs for that particular version of
|
||||
|
@ -311,13 +225,9 @@ case ${JOB_NAME} in
|
|||
: ${E2E_CLUSTER_NAME:="jnks-e2e-gce-${NODE_NAME}-${EXECUTOR_NUMBER}"}
|
||||
: ${E2E_NETWORK:="e2e-gce-${NODE_NAME}-${EXECUTOR_NUMBER}"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
# This list should match the list in kubernetes-e2e-gce-parallel.
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_PARALLEL_SKIP_TESTS[@]:+${GCE_PARALLEL_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"}
|
||||
# This list should match the list in kubernetes-e2e-gce.
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-gce-${NODE_NAME}-${EXECUTOR_NUMBER}"}
|
||||
: ${PROJECT:="kubernetes-jenkins-pull"}
|
||||
: ${ENABLE_DEPLOYMENTS:=true}
|
||||
|
@ -332,6 +242,7 @@ case ${JOB_NAME} in
|
|||
: ${E2E_CLUSTER_NAME:="jenkins-gce-e2e"}
|
||||
: ${E2E_PUBLISH_GREEN_VERSION:="true"}
|
||||
: ${E2E_NETWORK:="e2e-gce"}
|
||||
# This list should match the list in kubernetes-pull-build-test-e2e-gce.
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
|
@ -345,7 +256,7 @@ case ${JOB_NAME} in
|
|||
kubernetes-e2e-gce-slow)
|
||||
: ${E2E_CLUSTER_NAME:="jenkins-gce-e2e-slow"}
|
||||
: ${E2E_NETWORK:="e2e-slow"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tetss are relabeled
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=\[Slow\] \
|
||||
--ginkgo.skip=\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
|
@ -396,11 +307,9 @@ case ${JOB_NAME} in
|
|||
kubernetes-e2e-gce-flaky)
|
||||
: ${E2E_CLUSTER_NAME:="jenkins-gce-e2e-flaky"}
|
||||
: ${E2E_NETWORK:="e2e-flaky"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
) --ginkgo.focus=$(join_regex_no_empty \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=\[Flaky\] \
|
||||
--ginkgo.skip=\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-flaky"}
|
||||
: ${PROJECT:="k8s-jkns-e2e-gce-flaky"}
|
||||
: ${FAIL_ON_GCP_RESOURCE_LEAK:="true"}
|
||||
|
@ -412,12 +321,9 @@ case ${JOB_NAME} in
|
|||
: ${E2E_CLUSTER_NAME:="parallel-flaky"}
|
||||
: ${E2E_NETWORK:="e2e-parallel-flaky"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_PARALLEL_SKIP_TESTS[@]:+${GCE_PARALLEL_SKIP_TESTS[@]}} \
|
||||
) --ginkgo.focus=$(join_regex_no_empty \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=\[Flaky\] \
|
||||
--ginkgo.skip=\[Serial\]|\[Disruptive\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="parallel-flaky"}
|
||||
: ${PROJECT:="k8s-jkns-e2e-gce-prl-flaky"}
|
||||
: ${FAIL_ON_GCP_RESOURCE_LEAK:="true"}
|
||||
|
@ -445,7 +351,7 @@ case ${JOB_NAME} in
|
|||
: ${E2E_SET_CLUSTER_API_VERSION:=y}
|
||||
: ${PROJECT:="k8s-jkns-e2e-gke-slow"}
|
||||
: ${FAIL_ON_GCP_RESOURCE_LEAK:="true"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tetss are relabeled
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=\[Slow\] \
|
||||
--ginkgo.skip=\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
|
@ -468,9 +374,9 @@ case ${JOB_NAME} in
|
|||
: ${E2E_SET_CLUSTER_API_VERSION:=y}
|
||||
: ${PROJECT:="k8s-jkns-e2e-gke-ci-flaky"}
|
||||
: ${FAIL_ON_GCP_RESOURCE_LEAK:="true"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=$(join_regex_no_empty \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.focus=\[Flaky\] \
|
||||
--ginkgo.skip=\[Feature:.+\]|\[Skipped\]"}
|
||||
;;
|
||||
|
||||
# AWS core jobs
|
||||
|
@ -482,11 +388,9 @@ case ${JOB_NAME} in
|
|||
: ${E2E_ZONE:="us-west-2a"}
|
||||
: ${ZONE:="us-west-2a"}
|
||||
: ${E2E_NETWORK:="e2e-aws"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"}
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX="e2e-aws"}
|
||||
: ${PROJECT:="k8s-jkns-e2e-aws"}
|
||||
: ${ENABLE_DEPLOYMENTS:=true}
|
||||
|
@ -497,21 +401,6 @@ case ${JOB_NAME} in
|
|||
: ${AWS_SHARED_CREDENTIALS_FILE:='/var/lib/jenkins/.aws/credentials'}
|
||||
;;
|
||||
|
||||
# Runs all non-flaky tests on AWS in parallel.
|
||||
kubernetes-e2e-aws-parallel)
|
||||
: ${E2E_CLUSTER_NAME:="jenkins-aws-e2e-parallel"}
|
||||
: ${E2E_NETWORK:="e2e-parallel"}
|
||||
: ${GINKGO_PARALLEL:="y"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_PARALLEL_SKIP_TESTS[@]:+${GCE_PARALLEL_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
: ${ENABLE_DEPLOYMENTS:=true}
|
||||
# Override AWS defaults.
|
||||
NUM_NODES=${NUM_NODES_PARALLEL}
|
||||
;;
|
||||
|
||||
# Feature jobs
|
||||
|
||||
# Runs only the reboot tests on GCE.
|
||||
|
@ -583,12 +472,6 @@ case ${JOB_NAME} in
|
|||
: ${E2E_CLUSTER_NAME:="jenkins-gce-e2e-flannel"}
|
||||
: ${E2E_PUBLISH_GREEN_VERSION:="true"}
|
||||
: ${E2E_NETWORK:="e2e-gce-flannel"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_PARALLEL_SKIP_TESTS[@]:+${GCE_PARALLEL_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-flannel"}
|
||||
: ${PROJECT:="kubernetes-flannel"}
|
||||
# Override GCE defaults.
|
||||
|
@ -733,13 +616,11 @@ case ${JOB_NAME} in
|
|||
# Clear out any orphaned namespaces in case previous run was interrupted.
|
||||
: ${E2E_CLEAN_START:="true"}
|
||||
# We should be testing the reliability of a long-running cluster. The
|
||||
# DISRUPTIVE_TESTS kill/restart components or nodes in the cluster,
|
||||
# [Disruptive] tests kill/restart components or nodes in the cluster,
|
||||
# defeating the purpose of a soak cluster. (#15722)
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${DISRUPTIVE_TESTS[@]:+${DISRUPTIVE_TESTS[@]}} \
|
||||
)"}
|
||||
#
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="gce-soak-weekly"}
|
||||
: ${PROJECT:="kubernetes-jenkins"}
|
||||
;;
|
||||
|
@ -769,13 +650,11 @@ case ${JOB_NAME} in
|
|||
: ${PROJECT:="kubernetes-jenkins"}
|
||||
: ${E2E_OPT:="--check_version_skew=false"}
|
||||
# We should be testing the reliability of a long-running cluster. The
|
||||
# DISRUPTIVE_TESTS kill/restart components or nodes in the cluster,
|
||||
# [Disruptive] tests kill/restart components or nodes in the cluster,
|
||||
# defeating the purpose of a soak cluster. (#15722)
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${DISRUPTIVE_TESTS[@]:+${DISRUPTIVE_TESTS[@]}} \
|
||||
)"}
|
||||
#
|
||||
# TODO(ihmccreery) remove [Skipped] once tests are relabeled
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=\[Disruptive\]|\[Flaky\]|\[Feature:.+\]|\[Skipped\]"}
|
||||
;;
|
||||
|
||||
# Upgrade jobs
|
||||
|
@ -898,10 +777,6 @@ case ${JOB_NAME} in
|
|||
: ${E2E_UP:="false"}
|
||||
: ${E2E_TEST:="true"}
|
||||
: ${E2E_DOWN:="false"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-upgrade-1-0"}
|
||||
: ${NUM_NODES:=5}
|
||||
;;
|
||||
|
@ -935,10 +810,6 @@ case ${JOB_NAME} in
|
|||
: ${E2E_UP:="false"}
|
||||
: ${E2E_TEST:="true"}
|
||||
: ${E2E_DOWN:="false"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
)"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-upgrade-1-0"}
|
||||
: ${NUM_NODES:=5}
|
||||
;;
|
||||
|
@ -955,11 +826,6 @@ case ${JOB_NAME} in
|
|||
: ${E2E_UP:="false"}
|
||||
: ${E2E_TEST:="true"}
|
||||
: ${E2E_DOWN:="true"}
|
||||
: ${GINKGO_TEST_ARGS:="--ginkgo.skip=$(join_regex_allow_empty \
|
||||
${GCE_DEFAULT_SKIP_TESTS[@]:+${GCE_DEFAULT_SKIP_TESTS[@]}} \
|
||||
${GCE_FLAKY_TESTS[@]:+${GCE_FLAKY_TESTS[@]}} \
|
||||
${GCE_SLOW_TESTS[@]:+${GCE_SLOW_TESTS[@]}} \
|
||||
)"}
|
||||
: ${KUBE_GCE_INSTANCE_PREFIX:="e2e-upgrade-1-0"}
|
||||
: ${NUM_NODES:=5}
|
||||
;;
|
||||
|
|
Loading…
Reference in New Issue