Merge pull request #20596 from ihmccreery/skip-lists2

Auto commit by PR queue bot
pull/6/head
k8s-merge-robot 2016-02-08 10:02:09 -08:00
commit 3bbf55d38b
1 changed files with 26 additions and 160 deletions

View File

@ -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}
;;