diff --git a/templates/tools/dockerfile/cxx_test_deps.include b/templates/tools/dockerfile/cxx_test_deps.include new file mode 100644 index 00000000000..8154e1c294f --- /dev/null +++ b/templates/tools/dockerfile/cxx_test_deps.include @@ -0,0 +1,2 @@ +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted diff --git a/templates/tools/dockerfile/run_tests_python_deps_pep668.include b/templates/tools/dockerfile/run_tests_python_deps_pep668.include new file mode 100644 index 00000000000..bbc74ec6279 --- /dev/null +++ b/templates/tools/dockerfile/run_tests_python_deps_pep668.include @@ -0,0 +1,24 @@ +#==================== +# run_tests.py python dependencies + +# Basic python dependencies to be able to run tools/run_tests python scripts +# These dependencies are not sufficient to build gRPC Python, gRPC Python +# deps are defined elsewhere (e.g. python_deps.include) +RUN apt-get update && apt-get install -y ${'\\'} + python3 ${'\\'} + python3-pip ${'\\'} + python3-setuptools ${'\\'} + python3-yaml ${'\\'} + && apt-get clean + +# use pinned version of pip to avoid sudden breakages +# Some newer distros that have already implemented PEP 668. Use of +# --break-system-packages is to workaround that. We should look into using +# virtualenv in Dockerfile though. +RUN python3 -m pip install --break-system-packages --upgrade pip==19.3.1 + +# TODO(jtattermusch): currently six is needed for tools/run_tests scripts +# but since our python2 usage is deprecated, we should get rid of it. +RUN python3 -m pip install six==1.16.0 + +<%include file="./gcp_api_libraries.include"/> diff --git a/templates/tools/dockerfile/test/cxx_alpine_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_alpine_x64/Dockerfile.template index 1f0e6ae9496..02fbcadfdec 100644 --- a/templates/tools/dockerfile/test/cxx_alpine_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_alpine_x64/Dockerfile.template @@ -49,8 +49,9 @@ # These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts) RUN python3 -m pip install --upgrade google-auth==1.24.0 google-api-python-client==1.12.8 oauth2client==4.1.0 - RUN python3 -m pip install --upgrade --ignore-installed PyYAML==5.4.1 --user + RUN python3 -m pip install --upgrade --ignore-installed PyYAML==6.0.1 --user + <%include file="../../cxx_test_deps.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> <%include file="../../git-jenkins.include"/> diff --git a/templates/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile.template index 3bce77078cd..159b1c02c18 100644 --- a/templates/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile.template @@ -18,6 +18,7 @@ RUN apt-get update && apt-get install -y build-essential curl git time wget zip && apt-get clean <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> diff --git a/templates/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile.template index 6fc4b30dc63..e45b1b541ab 100644 --- a/templates/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile.template @@ -18,10 +18,12 @@ RUN apt-get update && apt-get install -y build-essential curl git time wget zip && apt-get clean <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cxx_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + <%include file="../../git-jenkins.include"/> # Define the default command. CMD ["bash"] diff --git a/templates/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile.template index 0f57c96e7a7..d1ad35875bd 100644 --- a/templates/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile.template @@ -18,10 +18,12 @@ <%include file="../../apt_get_basic.include"/> <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cxx_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + <%include file="../../git-jenkins.include"/> # Install openssl 1.0.2 from source RUN apt-get update && apt-get install -y build-essential zlib1g-dev diff --git a/templates/tools/dockerfile/test/cxx_debian11_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_debian11_x64/Dockerfile.template index 41b7c44e334..5de74c02bf3 100644 --- a/templates/tools/dockerfile/test/cxx_debian11_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_debian11_x64/Dockerfile.template @@ -18,10 +18,19 @@ <%include file="../../apt_get_basic.include"/> <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cxx_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + + #================= + # Setup git to access working directory across docker boundary + + RUN git config --global --add safe.directory "*" + RUN git config --global protocol.file.allow always + + # Define the default command. CMD ["bash"] diff --git a/templates/tools/dockerfile/test/cxx_debian11_x86/Dockerfile.template b/templates/tools/dockerfile/test/cxx_debian11_x86/Dockerfile.template index 10c025a4df9..7a38ee94a17 100644 --- a/templates/tools/dockerfile/test/cxx_debian11_x86/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_debian11_x86/Dockerfile.template @@ -18,10 +18,12 @@ <%include file="../../apt_get_basic.include"/> <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cxx_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + <%include file="../../git-jenkins.include"/> # Define the default command. CMD ["bash"] diff --git a/templates/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile.template index c5358fc4315..1e6377badbc 100644 --- a/templates/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile.template @@ -17,10 +17,12 @@ FROM gcc:12 RUN apt-get update && apt-get install -y curl git time wget zip && apt-get clean - <%include file="../../run_tests_python_deps.include"/> + <%include file="../../run_tests_python_deps_pep668.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + <%include file="../../git-jenkins.include"/> # Define the default command. CMD ["bash"] diff --git a/templates/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile.template index 98eaedc83c6..74bd403c1b2 100644 --- a/templates/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile.template @@ -18,9 +18,11 @@ RUN apt-get update && apt-get install -y curl git time wget zip && apt-get clean <%include file="../../run_tests_python_deps.include"/> + <%include file="../../cxx_test_deps.include"/> <%include file="../../cmake.include"/> <%include file="../../ccache.include"/> <%include file="../../run_tests_addons.include"/> + <%include file="../../git-jenkins.include"/> # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/cxx_alpine_x64.current_version b/tools/dockerfile/test/cxx_alpine_x64.current_version index 9a3f785bf57..2da4b2e1c87 100644 --- a/tools/dockerfile/test/cxx_alpine_x64.current_version +++ b/tools/dockerfile/test/cxx_alpine_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_alpine_x64:946399d3635bc9bcf2f40c026b80213ce30e479c@sha256:a84a6faf639dcf4a3e32eec0f5a08169e9c9866750e5aa53bdf89e8d378d326a \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_alpine_x64:79e6fb5086e7f367b90cf4a418f63b43fbe929e2@sha256:61fc7408e1171d9470bdd6920cc9da34e31fc43115b80f0fb6f7b9669ba6e366 \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile index 9121f4f7d34..35d0a43bc06 100644 --- a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile @@ -47,7 +47,10 @@ RUN python3 -m pip install six==1.16.0 # These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts) RUN python3 -m pip install --upgrade google-auth==1.24.0 google-api-python-client==1.12.8 oauth2client==4.1.0 -RUN python3 -m pip install --upgrade --ignore-installed PyYAML==5.4.1 --user +RUN python3 -m pip install --upgrade --ignore-installed PyYAML==6.0.1 --user + +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted #================= # Install ccache diff --git a/tools/dockerfile/test/cxx_clang_15_x64.current_version b/tools/dockerfile/test/cxx_clang_15_x64.current_version index 2259255e552..addfdf1a7fd 100644 --- a/tools/dockerfile/test/cxx_clang_15_x64.current_version +++ b/tools/dockerfile/test/cxx_clang_15_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_clang_15_x64:99325d14f5121515b2454bfab9b59c155e182c18@sha256:906c0ca1edcab595fce313636528e6244d8fc914a6e72a22764e96208f465936 \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_clang_15_x64:5cbbc7a77c098836dc97cb2d45b06bfba121e93e@sha256:aaac47bdeccfcf43331963a75df6a377923c69d1b57ea076c2072b140e00af65 \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile b/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile index e6d60b4a00c..6bf6c16a000 100644 --- a/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_clang_15_x64/Dockerfile @@ -40,6 +40,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # Install cmake # Note that this step should be only used for distributions that have new enough cmake to satisfy gRPC's cmake version requirement. diff --git a/tools/dockerfile/test/cxx_clang_6_x64.current_version b/tools/dockerfile/test/cxx_clang_6_x64.current_version index f3d14598966..2a23ab70a21 100644 --- a/tools/dockerfile/test/cxx_clang_6_x64.current_version +++ b/tools/dockerfile/test/cxx_clang_6_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_clang_6_x64:78958e51f94dfb5c8c5e0a1fde2cfa4ccf0fee02@sha256:c5cec74947c06174b21188eb9565f322a8543cd4878dc40b34cfcaee9a5fd94a \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_clang_6_x64:6a71e16cb0463e881d2201bc2d1b92f91961f649@sha256:79ecf682702190564c41289ffe00d4e6f80c104807cca324340349e84288ad99 \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile b/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile index e5ac6c1e25d..62cc4821ecf 100644 --- a/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_clang_6_x64/Dockerfile @@ -40,6 +40,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # C++ dependencies RUN apt-get update && apt-get -y install libc++-dev clang && apt-get clean @@ -67,6 +70,12 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory /var/local/jenkins/grpc +RUN git config --global protocol.file.allow always + # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/cxx_debian11_openssl102_x64.current_version b/tools/dockerfile/test/cxx_debian11_openssl102_x64.current_version index 04ee616ee1c..a82cf265b21 100644 --- a/tools/dockerfile/test/cxx_debian11_openssl102_x64.current_version +++ b/tools/dockerfile/test/cxx_debian11_openssl102_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_openssl102_x64:af647277e5acb05a89769f23a73a763be7423c53@sha256:15af353947cad7d7bead70ddb1e43a20cfa561de8e894aa7f92e320f55673959 \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_openssl102_x64:aa2bca3103b5c348b196dba01f7bbeb5e878cff9@sha256:8552c41ecca59e32cb3079981cce0b2993a443f1730562a7f19a172ab29f1b2d \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile b/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile index 95df506379a..afd263bc73d 100644 --- a/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_debian11_openssl102_x64/Dockerfile @@ -78,6 +78,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # C++ dependencies RUN apt-get update && apt-get -y install libc++-dev clang && apt-get clean @@ -105,6 +108,12 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory /var/local/jenkins/grpc +RUN git config --global protocol.file.allow always + # Install openssl 1.0.2 from source RUN apt-get update && apt-get install -y build-essential zlib1g-dev diff --git a/tools/dockerfile/test/cxx_debian11_x64.current_version b/tools/dockerfile/test/cxx_debian11_x64.current_version index e65323904ba..a4bfcd76ff0 100644 --- a/tools/dockerfile/test/cxx_debian11_x64.current_version +++ b/tools/dockerfile/test/cxx_debian11_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_x64:47b0a0916781ab659c049d44efb3f1496dae4660@sha256:a69a1ed729137c3ea347f0a3488524573285be7832dd74cec830db57b61a9b8c \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_x64:5a98939a2d0c3b327619e64dc64de9c2fc109e07@sha256:f4d2b360e8a49d95e8e92971566674a06015427c2488a841b3386feb41d2ff22 \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_debian11_x64/Dockerfile b/tools/dockerfile/test/cxx_debian11_x64/Dockerfile index 29ed6fc3005..e9938c33701 100644 --- a/tools/dockerfile/test/cxx_debian11_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_debian11_x64/Dockerfile @@ -78,6 +78,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # C++ dependencies RUN apt-get update && apt-get -y install libc++-dev clang && apt-get clean @@ -106,5 +109,13 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins + +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory "*" +RUN git config --global protocol.file.allow always + + # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/cxx_debian11_x86.current_version b/tools/dockerfile/test/cxx_debian11_x86.current_version index 63e3a3f299f..2f2dea432a6 100644 --- a/tools/dockerfile/test/cxx_debian11_x86.current_version +++ b/tools/dockerfile/test/cxx_debian11_x86.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_x86:7b84ff94b76bcf1e67126468bcb816cd1badc859@sha256:fcb11fd175ef153f7abddf25d1f71e338d1874a4075287dcf3af765ea6226a98 \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_debian11_x86:12152416b01acee79e4d18bcb855692fa11351b5@sha256:77a0be06797567ad9e4924bb5f1a523cd23555af0518a1525fc4a940d60d035c \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_debian11_x86/Dockerfile b/tools/dockerfile/test/cxx_debian11_x86/Dockerfile index f8d7dedd922..30b0b98b3f5 100644 --- a/tools/dockerfile/test/cxx_debian11_x86/Dockerfile +++ b/tools/dockerfile/test/cxx_debian11_x86/Dockerfile @@ -78,6 +78,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # C++ dependencies RUN apt-get update && apt-get -y install libc++-dev clang && apt-get clean @@ -105,6 +108,12 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory /var/local/jenkins/grpc +RUN git config --global protocol.file.allow always + # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/cxx_gcc_12_x64.current_version b/tools/dockerfile/test/cxx_gcc_12_x64.current_version index 843b08bbd7a..bbba05cc419 100644 --- a/tools/dockerfile/test/cxx_gcc_12_x64.current_version +++ b/tools/dockerfile/test/cxx_gcc_12_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_gcc_12_x64:6c0ab4904f3c9aa9a38ba29f14c94dfc3e7901b2@sha256:a6d9f04d8075e697e16245004ab22bf22dd972c9724ecb750919816396186c09 \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_gcc_12_x64:bb89a34b51f9b7cdb6d53c1194cb617f42a161d7@sha256:ca86af6cb592b4426585a67c7fe58d9925a6e5413801ab45831cd268102c4211 \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile b/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile index 41b11be2a25..d9b02508f8a 100644 --- a/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_gcc_12_x64/Dockerfile @@ -29,7 +29,10 @@ RUN apt-get update && apt-get install -y \ && apt-get clean # use pinned version of pip to avoid sudden breakages -RUN python3 -m pip install --upgrade pip==19.3.1 +# Some newer distros that have already implemented PEP 668. Use of +# --break-system-packages is to workaround that. We should look into using +# virtualenv in Dockerfile though. +RUN python3 -m pip install --break-system-packages --upgrade pip==19.3.1 # TODO(jtattermusch): currently six is needed for tools/run_tests scripts # but since our python2 usage is deprecated, we should get rid of it. @@ -40,6 +43,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # Install cmake # Note that this step should be only used for distributions that have new enough cmake to satisfy gRPC's cmake version requirement. @@ -63,6 +69,12 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory /var/local/jenkins/grpc +RUN git config --global protocol.file.allow always + # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/cxx_gcc_7_x64.current_version b/tools/dockerfile/test/cxx_gcc_7_x64.current_version index 7e105ab3154..1804164919f 100644 --- a/tools/dockerfile/test/cxx_gcc_7_x64.current_version +++ b/tools/dockerfile/test/cxx_gcc_7_x64.current_version @@ -1 +1 @@ -us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_gcc_7_x64:953aea35378bad8c12f2513c0dc6199bed1ca11d@sha256:7d33f341c7f7a5f358943c1f0b887de756079f406b7c7794e76cb0e42439c95b \ No newline at end of file +us-docker.pkg.dev/grpc-testing/testing-images-public/cxx_gcc_7_x64:a0054d259ebb76a5151bec9a1afe0743ab144d2c@sha256:7d1af94c7329b6b09f6266a56380c0690a31e9121abc89cb8a57820e0f6eb3bb \ No newline at end of file diff --git a/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile b/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile index 07283c83481..e25deca148e 100644 --- a/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_gcc_7_x64/Dockerfile @@ -40,6 +40,9 @@ RUN python3 -m pip install six==1.16.0 RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 +# Some cxx tests depend on the twisted package +RUN python3 -m pip install twisted + #================= # Install cmake # Note that this step should be only used for distributions that have new enough cmake to satisfy gRPC's cmake version requirement. @@ -63,6 +66,12 @@ RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/downloa RUN mkdir /var/local/jenkins +#================= +# Setup git to access working directory across docker boundary + +RUN git config --global --add safe.directory /var/local/jenkins/grpc +RUN git config --global protocol.file.allow always + # Define the default command. CMD ["bash"]