diff --git a/cluster/gke/config-common.sh b/cluster/gke/config-common.sh index 5bf138c24bf..e88d865fcb8 100644 --- a/cluster/gke/config-common.sh +++ b/cluster/gke/config-common.sh @@ -20,6 +20,7 @@ ZONE="${ZONE:-us-central1-f}" NUM_NODES="${NUM_NODES:-3}" +ADDITIONAL_ZONES="${ADDITIONAL_ZONES:-}" CLUSTER_API_VERSION="${CLUSTER_API_VERSION:-}" NETWORK="${NETWORK:-default}" NETWORK_RANGE="${NETWORK_RANGE:-10.240.0.0/16}" diff --git a/cluster/gke/util.sh b/cluster/gke/util.sh index e4a0ebe51ff..74faa73d57b 100755 --- a/cluster/gke/util.sh +++ b/cluster/gke/util.sh @@ -112,6 +112,7 @@ function verify-prereqs() { # ZONE # CLUSTER_API_VERSION (optional) # NUM_NODES +# ADDITIONAL_ZONES # NODE_SCOPES # MACHINE_TYPE function kube-up() { @@ -149,6 +150,10 @@ function kube-up() { "--machine-type=${MACHINE_TYPE}" ) + if [[ ! -z "${ADDITIONAL_ZONES:-}" ]]; then + create_args+=("--additional-zones=${ADDITIONAL_ZONES}") + fi + # Bring up the cluster. "${GCLOUD}" ${CMD_GROUP:-} container clusters create "${CLUSTER_NAME}" "${create_args[@]}" } diff --git a/hack/jenkins/job-configs/kubernetes-jenkins/kubernetes-e2e.yaml b/hack/jenkins/job-configs/kubernetes-jenkins/kubernetes-e2e.yaml index 1d583d599b5..346b6538586 100644 --- a/hack/jenkins/job-configs/kubernetes-jenkins/kubernetes-e2e.yaml +++ b/hack/jenkins/job-configs/kubernetes-jenkins/kubernetes-e2e.yaml @@ -224,6 +224,17 @@ export PROJECT="k8s-jkns-e2e-gke-ci-flaky" export GINKGO_TEST_ARGS="--ginkgo.focus=\[Flaky\] \ --ginkgo.skip=\[Feature:.+\]" + - 'gke-multizone': + description: 'Run all non-flaky, non-slow, non-disruptive, non-feature tests on GKE, in parallel, and in a multi-zone (Ubernetes-lite) cluster.' + timeout: 150 + emails: '$DEFAULT_RECIPIENTS, cloud-kubernetes-alerts@google.com, arob@google.com, quinton@google.com' + job-env: | + export PROJECT="k8s-jkns-e2e-gke-multizone" + export GINKGO_TEST_ARGS="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]" + export GINKGO_PARALLEL="y" + export NUM_NODES="1" + export ZONE="us-central1-f" + export ADDITIONAL_ZONES="us-central1-a,us-central1-b" jobs: - 'kubernetes-e2e-{suffix}'