Merge github.com:grpc/grpc into qps_driver
diff --git a/.travis.yml b/.travis.yml
index de320b5..e43a89e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -4,9 +4,11 @@
- 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 @@
- 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 325c881..0976678 100644
--- a/include/grpc++/impl/rpc_service_method.h
+++ b/include/grpc++/impl/rpc_service_method.h
@@ -39,10 +39,10 @@
#include <memory>
#include <vector>
+#include <grpc++/config.h>
#include <grpc++/impl/rpc_method.h>
#include <grpc++/status.h>
#include <grpc++/stream.h>
-#include <google/protobuf/message.h>
namespace grpc {
class ServerContext;
diff --git a/include/grpc++/server_context.h b/include/grpc++/server_context.h
index 9387f4a..a986fff 100644
--- a/include/grpc++/server_context.h
+++ b/include/grpc++/server_context.h
@@ -37,7 +37,7 @@
#include <chrono>
#include <map>
-#include "config.h"
+#include <grpc++/config.h>
struct gpr_timespec;
struct grpc_metadata;
diff --git a/src/cpp/client/channel.cc b/src/cpp/client/channel.cc
index ca69d66..450cf67 100644
--- a/src/cpp/client/channel.cc
+++ b/src/cpp/client/channel.cc
@@ -50,7 +50,6 @@
#include <grpc++/impl/call.h>
#include <grpc++/impl/rpc_method.h>
#include <grpc++/status.h>
-#include <google/protobuf/message.h>
namespace grpc {
diff --git a/src/cpp/common/call.cc b/src/cpp/common/call.cc
index b2b6c62..6ce1e8a 100644
--- a/src/cpp/common/call.cc
+++ b/src/cpp/common/call.cc
@@ -31,7 +31,6 @@
*
*/
-#include <google/protobuf/message.h>
#include <grpc/support/alloc.h>
#include <grpc++/impl/call.h>
#include <grpc++/client_context.h>
diff --git a/src/cpp/proto/proto_utils.cc b/src/cpp/proto/proto_utils.cc
index e6badd5..72f1bf7 100644
--- a/src/cpp/proto/proto_utils.cc
+++ b/src/cpp/proto/proto_utils.cc
@@ -36,7 +36,6 @@
#include <grpc/grpc.h>
#include <grpc/support/slice.h>
-#include <google/protobuf/message.h>
namespace grpc {
diff --git a/src/cpp/server/async_server_context.cc b/src/cpp/server/async_server_context.cc
index bee7549..f21efcf 100644
--- a/src/cpp/server/async_server_context.cc
+++ b/src/cpp/server/async_server_context.cc
@@ -36,7 +36,7 @@
#include <grpc/grpc.h>
#include <grpc/support/log.h>
#include "src/cpp/proto/proto_utils.h"
-#include <google/protobuf/message.h>
+#include <grpc++/config.h>
#include <grpc++/status.h>
namespace grpc {
diff --git a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
index e560112..30301f1 100644
--- a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
+++ b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs
@@ -103,8 +103,16 @@
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 8863856..619eff5 100755
--- a/tools/gce_setup/grpc_docker.sh
+++ b/tools/gce_setup/grpc_docker.sh
@@ -674,7 +674,7 @@
[[ -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 @@
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 @@
# 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 @@
# 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