diff --git a/.travis.yml b/.travis.yml index de320b59a3a..e43a89e453a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,9 +4,11 @@ before_install: - sudo add-apt-repository ppa:h-rayflood/llvm -y - sudo apt-get update -qq - sudo apt-get install -qq libgtest-dev libgflags-dev python-virtualenv clang-3.5 + - sudo pip install cpp-coveralls env: global: - RUBY_VERSION=2.1 + - COVERALLS_PARALLEL=true matrix: - CONFIG=dbg TEST=c - CONFIG=dbg TEST=c++ @@ -15,9 +17,15 @@ env: - CONFIG=opt TEST=node - CONFIG=opt TEST=ruby - CONFIG=opt TEST=python + - CONFIG=gcov TEST=c + - CONFIG=gcov TEST=c++ script: - rvm use $RUBY_VERSION - gem install bundler - ./tools/run_tests/run_tests.py -l $TEST -t -j 16 -c $CONFIG -s 4.0 +after_success: + - if [ "$CONFIG" = "gcov" ] ; then coveralls --exclude third_party --exclude gens -b. --gcov-options '\-p' ; fi notifications: - email: false \ No newline at end of file + email: false + webhooks: + - https://coveralls.io/webhook?repo_token=54IxAHPjJNdQJzJAhPU0MFpCtg7KvcydQ diff --git a/include/grpc++/impl/rpc_service_method.h b/include/grpc++/impl/rpc_service_method.h index 325c8812caf..097667827a1 100644 --- a/include/grpc++/impl/rpc_service_method.h +++ b/include/grpc++/impl/rpc_service_method.h @@ -39,10 +39,10 @@ #include #include +#include #include #include #include -#include namespace grpc { class ServerContext; diff --git a/include/grpc++/server_context.h b/include/grpc++/server_context.h index 9387f4a7e26..a986fff46bf 100644 --- a/include/grpc++/server_context.h +++ b/include/grpc++/server_context.h @@ -37,7 +37,7 @@ #include #include -#include "config.h" +#include struct gpr_timespec; struct grpc_metadata; diff --git a/src/cpp/client/channel.cc b/src/cpp/client/channel.cc index ca69d66cbbf..450cf67ac8b 100644 --- a/src/cpp/client/channel.cc +++ b/src/cpp/client/channel.cc @@ -50,7 +50,6 @@ #include #include #include -#include namespace grpc { diff --git a/src/cpp/common/call.cc b/src/cpp/common/call.cc index b2b6c627857..6ce1e8a7d58 100644 --- a/src/cpp/common/call.cc +++ b/src/cpp/common/call.cc @@ -31,7 +31,6 @@ * */ -#include #include #include #include diff --git a/src/cpp/proto/proto_utils.cc b/src/cpp/proto/proto_utils.cc index e6badd5d6e7..72f1bf74417 100644 --- a/src/cpp/proto/proto_utils.cc +++ b/src/cpp/proto/proto_utils.cc @@ -36,7 +36,6 @@ #include #include -#include namespace grpc { diff --git a/src/cpp/server/async_server_context.cc b/src/cpp/server/async_server_context.cc index bee75497b8c..f21efcfb19a 100644 --- a/src/cpp/server/async_server_context.cc +++ b/src/cpp/server/async_server_context.cc @@ -36,7 +36,7 @@ #include #include #include "src/cpp/proto/proto_utils.h" -#include +#include #include namespace grpc { diff --git a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs index e560112a899..30301f165ba 100644 --- a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs +++ b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs @@ -103,8 +103,16 @@ namespace Grpc.IntegrationTesting Credentials credentials = null; if (options.useTls) { - // TODO: use also Env variable for location of the ca file. - credentials = new SslCredentials(File.ReadAllText("data/ca.pem")); + string caPath = "data/ca.pem"; // Default testing CA + if (!options.useTestCa) + { + caPath = Environment.GetEnvironmentVariable("SSL_CERT_FILE"); + if (string.IsNullOrEmpty(caPath)) + { + throw new ArgumentException("CA path environment variable is not set."); + } + } + credentials = new SslCredentials(File.ReadAllText(caPath)); } ChannelArgs channelArgs = null; diff --git a/tools/gce_setup/grpc_docker.sh b/tools/gce_setup/grpc_docker.sh index 886385679bb..619eff56d62 100755 --- a/tools/gce_setup/grpc_docker.sh +++ b/tools/gce_setup/grpc_docker.sh @@ -674,7 +674,7 @@ _grpc_launch_servers_args() { [[ -n $1 ]] && { servers="$@" } || { - servers="cxx java go node ruby python" + servers="cxx java go node ruby python csharp_mono" echo "$FUNCNAME: no servers specified, will launch defaults '$servers'" } } @@ -710,6 +710,7 @@ grpc_launch_servers() { node) grpc_port=8040 ;; python) grpc_port=8050 ;; ruby) grpc_port=8060 ;; + csharp_mono) grpc_port=8070 ;; *) echo "bad server_type: $1" 1>&2; return 1 ;; esac local docker_label="grpc/$server" @@ -1169,8 +1170,9 @@ grpc_cloud_prod_auth_compute_engine_creds_gen_cxx_cmd() { # flags= .... # generic flags to include the command # cmd=$($grpc_gen_test_cmd $flags) grpc_interop_gen_csharp_mono_cmd() { - local cmd_prefix="sudo docker run grpc/csharp_mono"; - local test_script="mono /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug/Grpc.IntegrationTesting.Client.exe --use_tls=true --use_test_ca=true"; + local workdir_flag="-w /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug" + local cmd_prefix="sudo docker run $workdir_flag grpc/csharp_mono"; + local test_script="mono Grpc.IntegrationTesting.Client.exe --use_tls=true --use_test_ca=true"; local the_cmd="$cmd_prefix $test_script $@"; echo $the_cmd } @@ -1182,8 +1184,9 @@ grpc_interop_gen_csharp_mono_cmd() { # cmd=$($grpc_gen_test_cmd $flags) grpc_cloud_prod_gen_csharp_mono_cmd() { local env_flag="-e SSL_CERT_FILE=/cacerts/roots.pem " - local cmd_prefix="sudo docker run $env_flag grpc/csharp_mono"; - local test_script="mono /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug/Grpc.IntegrationTesting.Client.exe --use_tls=true"; + local workdir_flag="-w /var/local/git/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug" + local cmd_prefix="sudo docker run $env_flag $workdir_flag grpc/csharp_mono"; + local test_script="mono Grpc.IntegrationTesting.Client.exe --use_tls=true"; local gfe_flags=$(_grpc_prod_gfe_flags); local the_cmd="$cmd_prefix $test_script $gfe_flags $@"; echo $the_cmd