1#!/bin/bash 2# Copyright 2015 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# 16# Builds Java interop server and client in a base image. 17set -e 18 19cp -r /var/local/jenkins/grpc-java /tmp/grpc-java 20 21# copy service account keys if available 22cp -r /var/local/jenkins/service_account $HOME || true 23 24export GRADLE_OPTS="-Dorg.gradle.jvmargs='-Xmx1g'" 25 26pushd /tmp/grpc-java 27# make two attempts; downloads can fail. See https://github.com/grpc/grpc/issues/18892 28./gradlew --no-daemon :grpc-interop-testing:installDist -PskipCodegen=true -PskipAndroid=true || ${'\\'} 29 ./gradlew --no-daemon :grpc-interop-testing:installDist -PskipCodegen=true -PskipAndroid=true 30 31mkdir -p /var/local/git/grpc-java/ 32cp -r --parents -t /var/local/git/grpc-java/ ${'\\'} 33 interop-testing/build/install/ ${'\\'} 34 run-test-client.sh ${'\\'} 35 run-test-server.sh 36 37popd 38rm -r /tmp/grpc-java 39rm -r "$HOME/.gradle" 40 41# enable extra java logging 42mkdir -p /var/local/grpc_java_logging 43echo "handlers = java.util.logging.ConsoleHandler 44java.util.logging.ConsoleHandler.level = ALL 45.level = FINE 46io.grpc.netty.NettyClientHandler = ALL 47io.grpc.netty.NettyServerHandler = ALL" > /var/local/grpc_java_logging/logconf.txt 48