1#!/usr/bin/env bash 2# Copyright 2017 gRPC authors. 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15 16set -ex 17 18# Enter the gRPC repo root 19cd $(dirname $0)/../../.. 20 21source tools/internal_ci/helper_scripts/prepare_build_linux_rc 22 23python tools/run_tests/run_tests.py \ 24 -l c c++ -x coverage_cpp/sponge_log.xml \ 25 --use_docker -t -c gcov -j 2 || FAILED="true" 26 27python tools/run_tests/run_tests.py \ 28 -l python -x coverage_python/sponge_log.xml \ 29 --use_docker -t -c gcov -j 2 || FAILED="true" 30 31python tools/run_tests/run_tests.py \ 32 -l ruby -x coverage_ruby/sponge_log.xml \ 33 --use_docker -t -c gcov -j 2 || FAILED="true" 34 35python tools/run_tests/run_tests.py \ 36 -l php -x coverage_php/sponge_log.xml \ 37 --use_docker -t -c gcov -j 2 || FAILED="true" 38 39# HTML reports can't be easily displayed in GCS, so create a zip archive 40# and put it under reports directory to get it uploaded as an artifact. 41zip -q -r coverage_report.zip reports || true 42rm -rf reports || true 43mkdir reports || true 44mv coverage_report.zip reports || true 45 46if [ "$FAILED" != "" ] 47then 48 exit 1 49fi 50