|
|
|
@ -384,6 +384,7 @@ grpc_interop_test_args() { |
|
|
|
|
[[ -n $1 ]] && { # client_type |
|
|
|
|
case $1 in |
|
|
|
|
cxx|go|java|node|php|python|ruby|csharp_mono) |
|
|
|
|
grpc_client_platform='Docker' |
|
|
|
|
grpc_gen_test_cmd="grpc_interop_gen_$1_cmd" |
|
|
|
|
declare -F $grpc_gen_test_cmd >> /dev/null || { |
|
|
|
|
echo "-f: test_func for $1 => $grpc_gen_test_cmd is not defined" 1>&2 |
|
|
|
@ -391,6 +392,11 @@ grpc_interop_test_args() { |
|
|
|
|
} |
|
|
|
|
shift |
|
|
|
|
;; |
|
|
|
|
csharp_dotnet) |
|
|
|
|
grpc_client_platform='Windows' |
|
|
|
|
grpc_gen_test_cmd="grpc_interop_gen_$1_cmd" |
|
|
|
|
shift |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
echo "bad client_type: $1" 1>&2 |
|
|
|
|
return 1 |
|
|
|
@ -456,6 +462,7 @@ grpc_cloud_prod_test_args() { |
|
|
|
|
[[ -n $1 ]] && { # client_type |
|
|
|
|
case $1 in |
|
|
|
|
cxx|go|java|node|php|python|ruby|csharp_mono) |
|
|
|
|
grpc_client_platform='Docker' |
|
|
|
|
grpc_gen_test_cmd="grpc_cloud_prod_gen_$1_cmd" |
|
|
|
|
declare -F $grpc_gen_test_cmd >> /dev/null || { |
|
|
|
|
echo "-f: test_func for $1 => $grpc_gen_test_cmd is not defined" 1>&2 |
|
|
|
@ -463,6 +470,11 @@ grpc_cloud_prod_test_args() { |
|
|
|
|
} |
|
|
|
|
shift |
|
|
|
|
;; |
|
|
|
|
csharp_dotnet) |
|
|
|
|
grpc_client_platform='Windows' |
|
|
|
|
grpc_gen_test_cmd="grpc_cloud_prod_gen_$1_cmd" |
|
|
|
|
shift |
|
|
|
|
;; |
|
|
|
|
*) |
|
|
|
|
echo "bad client_type: $1" 1>&2 |
|
|
|
|
return 1 |
|
|
|
@ -851,12 +863,23 @@ grpc_launch_servers() { |
|
|
|
|
test_runner() { |
|
|
|
|
local project_opt="--project $grpc_project" |
|
|
|
|
local zone_opt="--zone $grpc_zone" |
|
|
|
|
local ssh_cmd="bash -l -c \"$cmd\"" |
|
|
|
|
echo "will run:" |
|
|
|
|
echo " $ssh_cmd" |
|
|
|
|
echo "on $host" |
|
|
|
|
[[ $dry_run == 1 ]] && return 0 # don't run the command on a dry run |
|
|
|
|
gcloud compute $project_opt ssh $zone_opt $host --command "$cmd" & |
|
|
|
|
if [ "$grpc_client_platform" != "Windows" ] |
|
|
|
|
then |
|
|
|
|
echo "will run:" |
|
|
|
|
echo " $cmd" |
|
|
|
|
echo "on $host" |
|
|
|
|
gcloud compute $project_opt ssh $zone_opt $host --command "$cmd" & |
|
|
|
|
else |
|
|
|
|
# gcloud's auto-uploading of RSA keys doesn't work for Windows VMs. |
|
|
|
|
# So we have a linux machine that is authorized to access the Windows |
|
|
|
|
# machine through ssh and we use gcloud auth support to logon to the proxy. |
|
|
|
|
echo "will run:" |
|
|
|
|
echo " $cmd" |
|
|
|
|
echo "on $host (through grpc-windows-proxy)" |
|
|
|
|
gcloud compute $project_opt ssh $zone_opt stoked-keyword-656@grpc-windows-proxy --command "ssh $host '$cmd'" & |
|
|
|
|
fi |
|
|
|
|
# |
|
|
|
|
PID=$! |
|
|
|
|
echo "pid is $PID" |
|
|
|
|
for x in {0..5} |
|
|
|
@ -924,7 +947,7 @@ grpc_interop_test() { |
|
|
|
|
|
|
|
|
|
local grpc_zone grpc_project dry_run # set by _grpc_set_project_and_zone |
|
|
|
|
# grpc_interop_test_args |
|
|
|
|
local test_case host grpc_gen_test_cmd grpc_server grpc_port |
|
|
|
|
local test_case host grpc_gen_test_cmd grpc_server grpc_port grpc_client_platform |
|
|
|
|
|
|
|
|
|
# set the project zone and check that all necessary args are provided |
|
|
|
|
_grpc_set_project_and_zone -f grpc_interop_test_args "$@" || return 1 |
|
|
|
@ -966,7 +989,7 @@ grpc_cloud_prod_test() { |
|
|
|
|
|
|
|
|
|
local grpc_zone grpc_project dry_run # set by _grpc_set_project_and_zone |
|
|
|
|
# grpc_cloud_prod_test_args |
|
|
|
|
local test_case host grpc_gen_test_cmd |
|
|
|
|
local test_case host grpc_gen_test_cmd grpc_client_platform |
|
|
|
|
|
|
|
|
|
# set the project zone and check that all necessary args are provided |
|
|
|
|
_grpc_set_project_and_zone -f grpc_cloud_prod_test_args "$@" || return 1 |
|
|
|
@ -1431,6 +1454,18 @@ grpc_interop_gen_csharp_mono_cmd() { |
|
|
|
|
echo $the_cmd |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# constructs the csharp-dotnet interop test cmd. |
|
|
|
|
# |
|
|
|
|
# call-seq: |
|
|
|
|
# flags= .... # generic flags to include the command |
|
|
|
|
# cmd=$($grpc_gen_test_cmd $flags) |
|
|
|
|
grpc_interop_gen_csharp_dotnet_cmd() { |
|
|
|
|
local set_workdir="cd /cygdrive/c/github/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug &&" |
|
|
|
|
local test_script="./Grpc.IntegrationTesting.Client.exe --use_tls=true --use_test_ca=true"; |
|
|
|
|
local the_cmd="$set_workdir $test_script $@"; |
|
|
|
|
echo $the_cmd |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# constructs the full dockerized csharp-mono gce=>prod interop test cmd. |
|
|
|
|
# |
|
|
|
|
# call-seq: |
|
|
|
@ -1446,6 +1481,20 @@ grpc_cloud_prod_gen_csharp_mono_cmd() { |
|
|
|
|
echo $the_cmd |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# constructs the csharp-dotnet gce=>prod interop test cmd. |
|
|
|
|
# |
|
|
|
|
# call-seq: |
|
|
|
|
# flags= .... # generic flags to include the command |
|
|
|
|
# cmd=$($grpc_gen_test_cmd $flags) |
|
|
|
|
grpc_cloud_prod_gen_csharp_dotnet_cmd() { |
|
|
|
|
local set_workdir="cd /cygdrive/c/github/grpc/src/csharp/Grpc.IntegrationTesting.Client/bin/Debug &&" |
|
|
|
|
local test_script="./Grpc.IntegrationTesting.Client.exe --use_tls=true"; |
|
|
|
|
local set_certfile="SSL_CERT_FILE=/cacerts/roots.pem " |
|
|
|
|
local gfe_flags=$(_grpc_prod_gfe_flags); |
|
|
|
|
local the_cmd="$set_workdir $set_certfile $test_script $gfe_flags $@"; |
|
|
|
|
echo $the_cmd |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# constructs the full dockerized csharp-mono service_account auth interop test cmd. |
|
|
|
|
# |
|
|
|
|
# call-seq: |
|
|
|
|