diff --git a/test/distrib/cpp/run_distrib_test.sh b/test/distrib/cpp/run_distrib_test.sh index 6b2e043491f..4c5deeaaae9 100755 --- a/test/distrib/cpp/run_distrib_test.sh +++ b/test/distrib/cpp/run_distrib_test.sh @@ -31,11 +31,13 @@ set -ex git clone $EXTERNAL_GIT_ROOT -cd grpc - # clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk -v EXTERNAL_GIT_ROOT=$EXTERNAL_GIT_ROOT/ '{ system("git \ -submodule update --init --reference " EXTERNAL_GIT_ROOT$2 " " $2) }' +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') + + +cd grpc cd third_party/protobuf && ./autogen.sh && \ ./configure && make -j4 && make check && make install && ldconfig diff --git a/tools/dockerfile/grpc_check_generated_pb_files/check_pb_files.sh b/tools/dockerfile/grpc_check_generated_pb_files/check_pb_files.sh index 4773a602a4c..71306bfb676 100755 --- a/tools/dockerfile/grpc_check_generated_pb_files/check_pb_files.sh +++ b/tools/dockerfile/grpc_check_generated_pb_files/check_pb_files.sh @@ -32,13 +32,13 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # build grpc cpp plugin for generating grpc pb files make grpc_cpp_plugin diff --git a/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh index 6a0b2ef0605..8f7be9ba134 100755 --- a/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_csharp/build_interop.sh @@ -33,15 +33,15 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # build C# interop client & server tools/run_tests/run_tests.py -l csharp -c dbg --build_only diff --git a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/build_interop.sh index c2bb64e84b5..476b69b09ae 100755 --- a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/build_interop.sh @@ -33,15 +33,15 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # build C# interop client & server tools/run_tests/run_tests.py -l csharp -c dbg --compiler coreclr --build_only diff --git a/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh index 47380c8a125..0822ed31052 100755 --- a/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_cxx/build_interop.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - make install-certs # build C++ interop client & server diff --git a/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh index 3adc8394902..907ee6b3642 100755 --- a/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_http2/build_interop.sh @@ -33,10 +33,10 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc - # clone gRPC submodules, use data from locally cloned submodules where possible -(cd /var/local/git/grpc/ && exec git submodule | awk '{ system("git submodule \ -update --init --reference ./../../jenkins/grpc/" $2 " " $2) }') +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true diff --git a/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh index 4b73bb56f80..30dc8a67046 100755 --- a/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # build Node interop client & server npm install -g node-gyp npm install --unsafe-perm --build-from-source diff --git a/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh index 48a6444821a..0fef66e512b 100755 --- a/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_php/build_interop.sh @@ -33,16 +33,16 @@ set -ex mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - rvm --default use ruby-2.1 # gRPC core and protobuf need to be installed diff --git a/tools/dockerfile/interoptest/grpc_interop_php7/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_php7/build_interop.sh index c2348f4f666..5d891c6c0b3 100755 --- a/tools/dockerfile/interoptest/grpc_interop_php7/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_php7/build_interop.sh @@ -33,16 +33,16 @@ set -ex mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - rvm --default use ruby-2.1 # gRPC core and protobuf need to be installed diff --git a/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh index e85153f51a0..4ffd2a63c39 100755 --- a/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_python/build_interop.sh @@ -33,14 +33,14 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - tools/run_tests/run_tests.py -l python -c opt --build_only diff --git a/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh index e5edb5335cb..68aa7a1643a 100755 --- a/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_ruby/build_interop.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - rvm --default use ruby-2.1 # build Ruby interop client and server diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh index 84920860803..7f2d587e59a 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_csharp/build_interop_stress.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # Copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # Build C++ metrics client (to query the metrics from csharp stress client) make metrics_client -j diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_cxx/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_cxx/build_interop_stress.sh index 9ab7aa07274..7332a8c1bbe 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_cxx/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_cxx/build_interop_stress.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - make install-certs BUILD_TYPE=${BUILD_TYPE:=opt} diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_go/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_go/build_interop_stress.sh index de8430d6778..f0a54a43626 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_go/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_go/build_interop_stress.sh @@ -39,10 +39,10 @@ git clone --recursive /var/local/jenkins/grpc-go src/google.golang.org/grpc # Clone the 'grpc' repo. We just need this for the wrapper scripts under # grpc/tools/gcp/stress_tests git clone /var/local/jenkins/grpc /var/local/git/grpc - # clone gRPC submodules, use data from locally cloned submodules where possible -(cd /var/local/git/grpc/ && exec git submodule | awk '{ system("git submodule \ -update --init --reference ./../../jenkins/grpc/" $2 " " $2) }') +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_java/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_java/build_interop_stress.sh index ffffea18d21..dcd3a0644a2 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_java/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_java/build_interop_stress.sh @@ -37,10 +37,10 @@ git clone --recursive --depth 1 /var/local/jenkins/grpc-java /var/local/git/grpc # grpc repo (for metrics client and for the stress test wrapper scripts) git clone /var/local/jenkins/grpc /var/local/git/grpc - # clone gRPC submodules, use data from locally cloned submodules where possible -(cd /var/local/git/grpc/ && exec git submodule | awk '{ system("git submodule \ -update --init --reference ./../../jenkins/grpc/" $2 " " $2) }') +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # Copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_node/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_node/build_interop_stress.sh index 4b73bb56f80..30dc8a67046 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_node/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_node/build_interop_stress.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - # build Node interop client & server npm install -g node-gyp npm install --unsafe-perm --build-from-source diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_php/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_php/build_interop_stress.sh index 78bf32ce519..0f624bf3217 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_php/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_php/build_interop_stress.sh @@ -33,16 +33,16 @@ set -ex mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - rvm --default use ruby-2.1 make install-certs diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_python/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_python/build_interop_stress.sh index 3f85a868032..57b916ca4dd 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_python/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_python/build_interop_stress.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - tools/run_tests/run_tests.py -l python -c opt --build_only # Build c++ interop client diff --git a/tools/dockerfile/stress_test/grpc_interop_stress_ruby/build_interop_stress.sh b/tools/dockerfile/stress_test/grpc_interop_stress_ruby/build_interop_stress.sh index 09b6fb1e117..bb4d2fcd224 100755 --- a/tools/dockerfile/stress_test/grpc_interop_stress_ruby/build_interop_stress.sh +++ b/tools/dockerfile/stress_test/grpc_interop_stress_ruby/build_interop_stress.sh @@ -33,16 +33,16 @@ set -e mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc +# clone gRPC submodules, use data from locally cloned submodules where possible +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') # Copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true cd /var/local/git/grpc -# clone gRPC submodules, use data from locally cloned submodules where possible -git submodule | awk '{ system("git submodule update --init --reference \ -./../../jenkins/grpc/" $2 " " $2) }' - rvm --default use ruby-2.1 # Build Ruby interop client and server diff --git a/tools/run_tests/dockerize/docker_run.sh b/tools/run_tests/dockerize/docker_run.sh index e57ceaf0ac8..d50ea81750b 100755 --- a/tools/run_tests/dockerize/docker_run.sh +++ b/tools/run_tests/dockerize/docker_run.sh @@ -38,9 +38,9 @@ then mkdir -p /var/local/git git clone "$EXTERNAL_GIT_ROOT" /var/local/git/grpc # clone gRPC submodules, use data from locally cloned submodules where possible - (cd var/local/git/grpc && exec git submodule | awk -v \ - EXTERNAL_GIT_ROOT=$EXTERNAL_GIT_ROOT/ '{ system("git submodule update --init \ - --reference " EXTERNAL_GIT_ROOT$2 " " $2) }') + (cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ + && git submodule update --init --reference /var/local/jenkins/grpc/${name} \ + ${name}') else mkdir -p "/var/local/git/grpc/$RELATIVE_COPY_PATH" cp -r "$EXTERNAL_GIT_ROOT/$RELATIVE_COPY_PATH"/* "/var/local/git/grpc/$RELATIVE_COPY_PATH" diff --git a/tools/run_tests/dockerize/docker_run_tests.sh b/tools/run_tests/dockerize/docker_run_tests.sh index a1e94b29527..41d93e444d4 100755 --- a/tools/run_tests/dockerize/docker_run_tests.sh +++ b/tools/run_tests/dockerize/docker_run_tests.sh @@ -43,10 +43,10 @@ chown $(whoami) $XDG_CACHE_HOME mkdir -p /var/local/git git clone /var/local/jenkins/grpc /var/local/git/grpc - # clone gRPC submodules, use data from locally cloned submodules where possible -(cd /var/local/git/grpc/ && exec git submodule | awk '{ system("git submodule \ -update --init --reference ./../../jenkins/grpc/" $2 " " $2) }') +(cd /var/local/jenkins/grpc / && git submodule foreach 'cd /var/local/git/grpc \ +&& git submodule update --init --reference /var/local/jenkins/grpc/${name} \ +${name}') mkdir -p reports