ingress-nginx-helm/test/e2e-image/e2e.sh

74 lines
2.2 KiB
Bash
Raw Normal View History

#!/bin/bash
# Copyright 2019 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -e
NC='\e[0m'
BGREEN='\e[32m'
#SLOW_E2E_THRESHOLD=${SLOW_E2E_THRESHOLD:-"5s"}
FOCUS=${FOCUS:-.*}
E2E_NODES=${E2E_NODES:-5}
E2E_CHECK_LEAKS=${E2E_CHECK_LEAKS:-""}
ginkgo_args=(
2022-08-28 03:04:37 +00:00
"-randomize-all"
"-flake-attempts=2"
"-fail-fast"
"--show-node-events"
"--poll-progress-after=180s"
# "-slow-spec-threshold=${SLOW_E2E_THRESHOLD}"
"-succinct"
2021-11-15 22:34:48 +00:00
"-timeout=75m"
)
2022-12-03 01:43:53 +00:00
# Variable for the prefix of report filenames
reportFileNamePrefix="report-e2e-test-suite"
echo -e "${BGREEN}Running e2e test suite (FOCUS=${FOCUS})...${NC}"
ginkgo "${ginkgo_args[@]}" \
-focus="${FOCUS}" \
-skip="\[Serial\]|\[MemoryLeak\]" \
-nodes="${E2E_NODES}" \
2022-12-03 01:43:53 +00:00
--junit-report=$reportFileNamePrefix.xml \
/e2e.test
2022-12-03 01:43:53 +00:00
# Create configMap out of a compressed report file for extraction later
echo -e "${BGREEN}Running e2e test suite with tests that require serial execution...${NC}"
ginkgo "${ginkgo_args[@]}" \
-focus="\[Serial\]" \
-skip="\[MemoryLeak\]" \
2022-12-03 01:43:53 +00:00
--junit-report=$reportFileNamePrefix-serial.xml \
/e2e.test
2022-12-03 01:43:53 +00:00
# Create configMap out of a compressed report file for extraction later
if [[ ${E2E_CHECK_LEAKS} != "" ]]; then
echo -e "${BGREEN}Running e2e test suite with tests that check for memory leaks...${NC}"
ginkgo "${ginkgo_args[@]}" \
-focus="\[MemoryLeak\]" \
-skip="\[Serial\]" \
2022-12-03 01:43:53 +00:00
--junit-report=$reportFileNamePrefix-memleak.xml \
/e2e.test
2022-12-03 01:43:53 +00:00
# Create configMap out of a compressed report file for extraction later
fi
2022-12-03 01:43:53 +00:00
for rFile in `ls $reportFileNamePrefix*`
do
gzip -k $rFile
kubectl create cm $rFile.gz --from-file $rFile.gz
kubectl label cm $rFile.gz junitreport=true
done