From bb6d51adaadabdebcbbf439837d053fc411d0a95 Mon Sep 17 00:00:00 2001 From: Mehrdad Afshari Date: Wed, 25 Apr 2018 10:55:43 -0700 Subject: Add Dockerfiles for Python source distribtests --- .../distribtest/python_dev_arch_x64/Dockerfile | 22 ++++++++++++++++++ .../distribtest/python_dev_centos7_x64/Dockerfile | 22 ++++++++++++++++++ .../distribtest/python_dev_fedora22_x64/Dockerfile | 23 ++++++++++++++++++ .../distribtest/python_dev_fedora23_x64/Dockerfile | 23 ++++++++++++++++++ .../distribtest/python_dev_jessie_x64/Dockerfile | 21 +++++++++++++++++ .../distribtest/python_dev_jessie_x86/Dockerfile | 27 ++++++++++++++++++++++ .../python_dev_ubuntu1404_x64/Dockerfile | 22 ++++++++++++++++++ .../python_dev_ubuntu1604_x64/Dockerfile | 22 ++++++++++++++++++ 8 files changed, 182 insertions(+) create mode 100644 tools/dockerfile/distribtest/python_dev_arch_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_centos7_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_fedora22_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_fedora23_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_jessie_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_jessie_x86/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_ubuntu1404_x64/Dockerfile create mode 100644 tools/dockerfile/distribtest/python_dev_ubuntu1604_x64/Dockerfile (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/distribtest/python_dev_arch_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_arch_x64/Dockerfile new file mode 100644 index 0000000000..7f09fd6423 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_arch_x64/Dockerfile @@ -0,0 +1,22 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM base/archlinux + +RUN pacman --noconfirm -Syy +RUN pacman --noconfirm -S openssl +RUN pacman --noconfirm -S python2 +RUN pacman --noconfirm -S python2-pip +RUN pip2 install virtualenv +RUN pacman --noconfirm -S base-devel diff --git a/tools/dockerfile/distribtest/python_dev_centos7_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_centos7_x64/Dockerfile new file mode 100644 index 0000000000..954146c5e9 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_centos7_x64/Dockerfile @@ -0,0 +1,22 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM centos:7 + +RUN yum install -y python +RUN yum install -y epel-release +RUN yum install -y python-pip +RUN pip install virtualenv +RUN yum groupinstall -y 'Development Tools' +RUN yum install -y python-devel diff --git a/tools/dockerfile/distribtest/python_dev_fedora22_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_fedora22_x64/Dockerfile new file mode 100644 index 0000000000..d86ad378c3 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_fedora22_x64/Dockerfile @@ -0,0 +1,23 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM fedora:22 + +RUN yum clean all && yum update -y && yum install -y python python-pip +RUN pip install virtualenv + +RUN yum groupinstall -y "Development Tools" +RUN yum install -y redhat-rpm-config +RUN yum install -y gcc-c++ +RUN yum install -y python2-devel diff --git a/tools/dockerfile/distribtest/python_dev_fedora23_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_fedora23_x64/Dockerfile new file mode 100644 index 0000000000..0dbf5e4c21 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_fedora23_x64/Dockerfile @@ -0,0 +1,23 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM fedora:23 + +RUN yum clean all && yum update -y && yum install -y python python-pip +RUN pip install virtualenv + +RUN yum groupinstall -y "Development Tools" +RUN yum install -y redhat-rpm-config +RUN yum install -y gcc-c++ +RUN yum install -y python2-devel diff --git a/tools/dockerfile/distribtest/python_dev_jessie_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_jessie_x64/Dockerfile new file mode 100644 index 0000000000..c2228989cd --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_jessie_x64/Dockerfile @@ -0,0 +1,21 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM debian:jessie + +RUN apt-get update && apt-get install -y python python-pip +RUN pip install virtualenv + +RUN apt-get install -y build-essential +RUN apt-get install -y python-dev diff --git a/tools/dockerfile/distribtest/python_dev_jessie_x86/Dockerfile b/tools/dockerfile/distribtest/python_dev_jessie_x86/Dockerfile new file mode 100644 index 0000000000..5e0b8efe75 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_jessie_x86/Dockerfile @@ -0,0 +1,27 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM 32bit/debian:jessie + +RUN apt-get update && apt-get install -y python python-pip + +RUN pip install virtualenv + +RUN apt-get install -y build-essential +RUN apt-get install -y python-dev + +# docker is running on a 64-bit machine, so we need to +# override "uname -m" to report i686 instead of x86_64, otherwise +# python will choose a wrong binary package to install. +ENTRYPOINT ["linux32"] diff --git a/tools/dockerfile/distribtest/python_dev_ubuntu1404_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_ubuntu1404_x64/Dockerfile new file mode 100644 index 0000000000..6c842aeba0 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_ubuntu1404_x64/Dockerfile @@ -0,0 +1,22 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM ubuntu:14.04 + +RUN apt-get update -y && apt-get install -y python python-pip + +RUN apt-get install -y build-essential +RUN apt-get install -y python-dev + +RUN pip install virtualenv diff --git a/tools/dockerfile/distribtest/python_dev_ubuntu1604_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_ubuntu1604_x64/Dockerfile new file mode 100644 index 0000000000..1ff1e0a1d6 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_ubuntu1604_x64/Dockerfile @@ -0,0 +1,22 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM ubuntu:16.04 + +RUN apt-get update -y && apt-get install -y python python-pip + +RUN apt-get install -y build-essential +RUN apt-get install -y python-dev + +RUN pip install virtualenv -- cgit v1.2.3 From fcd04ec121664de621ceb874c44eab5fbdc6bbd7 Mon Sep 17 00:00:00 2001 From: Matt Kwong Date: Fri, 4 May 2018 12:00:25 -0700 Subject: Remove the fallback when creating Python virtual env See https://github.com/grpc/grpc/issues/15253 for more context. The original behavior when running Python tests is to try to create a virtual env with the specifed Python version. If there is an issue with that, fallback to the system's default Python version. This leads to misleading test results, so removing the fallback and failing the test when virtual env fails to instantiate the specified Python version is the new behavior. --- .../dockerfile/test/python_jessie_x64/Dockerfile.template | 4 ++++ tools/dockerfile/test/python_jessie_x64/Dockerfile | 4 ++++ tools/run_tests/helper_scripts/build_python.sh | 15 +++------------ 3 files changed, 11 insertions(+), 12 deletions(-) (limited to 'tools/dockerfile') diff --git a/templates/tools/dockerfile/test/python_jessie_x64/Dockerfile.template b/templates/tools/dockerfile/test/python_jessie_x64/Dockerfile.template index dba6a227f2..e73b839a28 100644 --- a/templates/tools/dockerfile/test/python_jessie_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/python_jessie_x64/Dockerfile.template @@ -19,6 +19,10 @@ <%include file="../../apt_get_basic.include"/> <%include file="../../gcp_api_libraries.include"/> <%include file="../../python_deps.include"/> + # Install pip and virtualenv for Python 3.4 + RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 + RUN python3.4 -m pip install virtualenv + <%include file="../../run_tests_addons.include"/> # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/python_jessie_x64/Dockerfile b/tools/dockerfile/test/python_jessie_x64/Dockerfile index 41b670c06c..bd9d55ed8a 100644 --- a/tools/dockerfile/test/python_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/python_jessie_x64/Dockerfile @@ -68,6 +68,10 @@ RUN pip install --upgrade pip==10.0.1 RUN pip install virtualenv RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 +# Install pip and virtualenv for Python 3.4 +RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 +RUN python3.4 -m pip install virtualenv + # Prepare ccache RUN ln -s /usr/bin/ccache /usr/local/bin/gcc RUN ln -s /usr/bin/ccache /usr/local/bin/g++ diff --git a/tools/run_tests/helper_scripts/build_python.sh b/tools/run_tests/helper_scripts/build_python.sh index b0a6f0f4d4..cdcb2aa116 100755 --- a/tools/run_tests/helper_scripts/build_python.sh +++ b/tools/run_tests/helper_scripts/build_python.sh @@ -112,10 +112,6 @@ export CFLAGS="-I$ROOT/include -std=gnu99 -fno-wrapv $CFLAGS" export GRPC_PYTHON_BUILD_WITH_CYTHON=1 export LANG=en_US.UTF-8 -# Default python on the host to fall back to when instantiating e.g. the -# virtualenv. -HOST_PYTHON=${HOST_PYTHON:-python} - # If ccache is available on Linux, use it. if [ "$(is_linux)" ]; then # We're not on Darwin (Mac OS X) @@ -132,14 +128,9 @@ fi # Perform build operations # ############################ -# Instantiate the virtualenv, preferring to do so from the relevant python -# version. Even if these commands fail (e.g. on Windows due to name conflicts) -# it's possible that the virtualenv is still usable and we trust the tester to -# be able to 'figure it out' instead of us e.g. doing potentially expensive and -# unnecessary error recovery by `rm -rf`ing the virtualenv. -($PYTHON -m virtualenv "$VENV" || - $HOST_PYTHON -m virtualenv -p "$PYTHON" "$VENV" || - true) +# Instantiate the virtualenv from the Python version passed in. +$PYTHON -m pip install virtualenv +$PYTHON -m virtualenv "$VENV" VENV_PYTHON=$(script_realpath "$VENV/$VENV_RELATIVE_PYTHON") # See https://github.com/grpc/grpc/issues/14815 for more context. We cannot rely -- cgit v1.2.3 From cd1172c9dd3b346d261835bb7c6fdd94556a53b2 Mon Sep 17 00:00:00 2001 From: murgatroid99 Date: Mon, 7 May 2018 10:31:41 -0700 Subject: Revert recent changes to node interop build script --- .../dockerfile/interoptest/grpc_interop_node/build_interop.sh | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh index 21fdd0b490..c16efc1d35 100755 --- a/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh +++ b/tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh @@ -17,23 +17,12 @@ set -e mkdir -p /var/local/git - git clone /var/local/jenkins/grpc-node /var/local/git/grpc-node # clone gRPC submodules, use data from locally cloned submodules where possible (cd /var/local/jenkins/grpc-node/ && git submodule foreach 'cd /var/local/git/grpc-node \ && git submodule update --init --recursive --reference /var/local/jenkins/grpc-node/${name} \ ${name}') -# Use the pending c-core changes if possible -if [ -d "/var/local/jenkins/grpc" ]; then - cd /var/local/jenkins/grpc - CURRENT_COMMIT="$(git rev-parse --verify HEAD)" - cd /var/local/git/grpc-node/packages/grpc-native-core/deps/grpc/ - git fetch --tags --progress https://github.com/grpc/grpc.git +refs/pull/*:refs/remotes/origin/pr/* - git checkout $CURRENT_COMMIT - git submodule update --init --recursive --reference /var/local/jenkins/grpc -fi - # copy service account keys if available cp -r /var/local/jenkins/service_account $HOME || true -- cgit v1.2.3 From 4d5200f99a2824ff91357328d88395f76f6649f2 Mon Sep 17 00:00:00 2001 From: Matt Kwong Date: Tue, 8 May 2018 14:16:44 -0700 Subject: Install pip for Python3.4 in all Dockerfiles used for Python testing --- .../dockerfile/interoptest/grpc_interop_python/Dockerfile.template | 4 ++++ templates/tools/dockerfile/test/python_pyenv_x64/Dockerfile.template | 4 ++++ tools/dockerfile/interoptest/grpc_interop_python/Dockerfile | 4 ++++ tools/dockerfile/test/python_pyenv_x64/Dockerfile | 4 ++++ 4 files changed, 16 insertions(+) (limited to 'tools/dockerfile') diff --git a/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template b/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template index f5a53f045f..bf28796de3 100644 --- a/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template +++ b/templates/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile.template @@ -18,6 +18,10 @@ <%include file="../../apt_get_basic.include"/> <%include file="../../python_deps.include"/> + # Install pip and virtualenv for Python 3.4 + RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 + RUN python3.4 -m pip install virtualenv + <%include file="../../run_tests_addons.include"/> # Define the default command. CMD ["bash"] diff --git a/templates/tools/dockerfile/test/python_pyenv_x64/Dockerfile.template b/templates/tools/dockerfile/test/python_pyenv_x64/Dockerfile.template index 0df19f61e1..ba65c06a3b 100644 --- a/templates/tools/dockerfile/test/python_pyenv_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/python_pyenv_x64/Dockerfile.template @@ -20,6 +20,10 @@ <%include file="../../gcp_api_libraries.include"/> <%include file="../../python_deps.include"/> <%include file="../../apt_get_pyenv.include"/> + # Install pip and virtualenv for Python 3.4 + RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 + RUN python3.4 -m pip install virtualenv + <%include file="../../run_tests_addons.include"/> # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile index 97cdf48db8..94290f3620 100644 --- a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile @@ -64,6 +64,10 @@ RUN pip install --upgrade pip==10.0.1 RUN pip install virtualenv RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 +# Install pip and virtualenv for Python 3.4 +RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 +RUN python3.4 -m pip install virtualenv + # Prepare ccache RUN ln -s /usr/bin/ccache /usr/local/bin/gcc RUN ln -s /usr/bin/ccache /usr/local/bin/g++ diff --git a/tools/dockerfile/test/python_pyenv_x64/Dockerfile b/tools/dockerfile/test/python_pyenv_x64/Dockerfile index 24fe7b2931..6d72a1cc40 100644 --- a/tools/dockerfile/test/python_pyenv_x64/Dockerfile +++ b/tools/dockerfile/test/python_pyenv_x64/Dockerfile @@ -91,6 +91,10 @@ RUN pyenv install 3.6-dev RUN pyenv install pypy-5.3.1 RUN pyenv local 3.5-dev 3.6-dev pypy-5.3.1 +# Install pip and virtualenv for Python 3.4 +RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 +RUN python3.4 -m pip install virtualenv + # Prepare ccache RUN ln -s /usr/bin/ccache /usr/local/bin/gcc RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -- cgit v1.2.3 From fe71244f5b7a06933455b990606004aeda9b31e6 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Wed, 9 May 2018 11:43:25 +0200 Subject: Install pip for Python3.4 for gcov tests --- .../tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template | 4 ++++ tools/dockerfile/test/multilang_jessie_x64/Dockerfile | 4 ++++ 2 files changed, 8 insertions(+) (limited to 'tools/dockerfile') diff --git a/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template b/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template index 0d47aa91f3..672e9fbb5c 100644 --- a/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template @@ -25,6 +25,10 @@ <%include file="../../php_deps.include"/> <%include file="../../ruby_deps.include"/> <%include file="../../python_deps.include"/> + # Install pip and virtualenv for Python 3.4 + RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 + RUN python3.4 -m pip install virtualenv + # Install coverage for Python test coverage reporting RUN pip install coverage ENV PATH ~/.local/bin:$PATH diff --git a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile index 962fe97de0..e22484fbcd 100644 --- a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile @@ -144,6 +144,10 @@ RUN pip install --upgrade pip==10.0.1 RUN pip install virtualenv RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 +# Install pip and virtualenv for Python 3.4 +RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 +RUN python3.4 -m pip install virtualenv + # Install coverage for Python test coverage reporting RUN pip install coverage ENV PATH ~/.local/bin:$PATH -- cgit v1.2.3 From 0767878b6efb059c209e82ca1d6d2fbcfb309b70 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 12 Apr 2018 13:56:03 +0200 Subject: build C# android artifact --- .../experimental/build_native_ext_for_android.sh | 2 +- .../grpc_artifact_android_ndk/Dockerfile | 68 ++++++++++++++++++++++ tools/run_tests/artifacts/artifact_targets.py | 9 ++- .../artifacts/build_artifact_csharp_android.sh | 23 ++++++++ 4 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 tools/dockerfile/grpc_artifact_android_ndk/Dockerfile create mode 100755 tools/run_tests/artifacts/build_artifact_csharp_android.sh (limited to 'tools/dockerfile') diff --git a/src/csharp/experimental/build_native_ext_for_android.sh b/src/csharp/experimental/build_native_ext_for_android.sh index 958778e929..8197df7c53 100755 --- a/src/csharp/experimental/build_native_ext_for_android.sh +++ b/src/csharp/experimental/build_native_ext_for_android.sh @@ -23,7 +23,7 @@ mkdir -p build cd build # set to the location where Android SDK is installed -ANDROID_NDK_PATH="$HOME/android-ndk-r16b" +# e.g. ANDROID_NDK_PATH="$HOME/android-ndk-r16b" cmake ../.. \ -DCMAKE_SYSTEM_NAME=Android \ diff --git a/tools/dockerfile/grpc_artifact_android_ndk/Dockerfile b/tools/dockerfile/grpc_artifact_android_ndk/Dockerfile new file mode 100644 index 0000000000..77b6acfb16 --- /dev/null +++ b/tools/dockerfile/grpc_artifact_android_ndk/Dockerfile @@ -0,0 +1,68 @@ +# Copyright 2016 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Docker file for building gRPC artifacts. + +# Recent enough cmake (>=3.9) needed by Android SDK +FROM debian:sid + +RUN apt-get update && apt-get install -y debian-keyring && apt-key update + +# Install Git and basic packages. +RUN apt-get update && apt-key update && apt-get install -y \ + autoconf \ + autotools-dev \ + build-essential \ + bzip2 \ + clang \ + curl \ + gcc \ + gcc-multilib \ + git \ + golang \ + libc6 \ + libc6-dbg \ + libc6-dev \ + libgtest-dev \ + libtool \ + make \ + perl \ + strace \ + python-dev \ + python-setuptools \ + python-yaml \ + telnet \ + unzip \ + wget \ + zip && apt-get clean + +# Cmake for cross-compilation +RUN apt-get update && apt-get install -y cmake golang && apt-get clean + +################## +# Android NDK + +# Download and install Android NDK +RUN wget -q https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip -O android_ndk.zip \ + && unzip -q android_ndk.zip \ + && rm android_ndk.zip \ + && mv ./android-ndk-r16b /opt +ENV ANDROID_NDK_PATH /opt/android-ndk-r16b + +RUN apt-get update && apt-get install -y libpthread-stubs0-dev && apt-get clean + +RUN mkdir /var/local/jenkins + +# Define the default command. +CMD ["bash"] diff --git a/tools/run_tests/artifacts/artifact_targets.py b/tools/run_tests/artifacts/artifact_targets.py index daa163e6dd..e4d9e6bdfe 100644 --- a/tools/run_tests/artifacts/artifact_targets.py +++ b/tools/run_tests/artifacts/artifact_targets.py @@ -222,7 +222,13 @@ class CSharpExtArtifact: return [] def build_jobspec(self): - if self.platform == 'windows': + if self.arch == 'android': + return create_docker_jobspec( + self.name, + 'tools/dockerfile/grpc_artifact_android_ndk', + 'tools/run_tests/artifacts/build_artifact_csharp_android.sh', + environ={}) + elif self.platform == 'windows': cmake_arch_option = 'Win32' if self.arch == 'x86' else self.arch return create_jobspec( self.name, [ @@ -342,6 +348,7 @@ def targets(): for Cls in (CSharpExtArtifact, ProtocArtifact) for platform in ('linux', 'macos', 'windows') for arch in ('x86', 'x64') ] + [ + CSharpExtArtifact('linux', 'android'), PythonArtifact('linux', 'x86', 'cp27-cp27m'), PythonArtifact('linux', 'x86', 'cp27-cp27mu'), PythonArtifact('linux', 'x86', 'cp34-cp34m'), diff --git a/tools/run_tests/artifacts/build_artifact_csharp_android.sh b/tools/run_tests/artifacts/build_artifact_csharp_android.sh new file mode 100755 index 0000000000..ba598e76a4 --- /dev/null +++ b/tools/run_tests/artifacts/build_artifact_csharp_android.sh @@ -0,0 +1,23 @@ +#!/bin/bash +# Copyright 2016 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -ex + +cd "$(dirname "$0")/../../.." + +src/csharp/experimental/build_native_ext_for_android.sh + +mkdir -p "${ARTIFACTS_OUT}" +cp cmake/build/libgrpc_csharp_ext.so "${ARTIFACTS_OUT}" -- cgit v1.2.3 From 1d3cc21910ef2f18336ab650dbe41c56f8fc166f Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Thu, 10 May 2018 14:15:21 +0200 Subject: update C# distribtests --- .../csharp/DistribTest/DistribTest.project.json | 11 --------- .../csharp/DistribTest/DistribTestDotNet.csproj | 27 ++++++++++++++++++++++ test/distrib/csharp/DistribTest/project.json | 22 ------------------ test/distrib/csharp/run_distrib_test.sh | 5 ---- test/distrib/csharp/run_distrib_test_dotnetcli.sh | 17 ++++++++------ test/distrib/csharp/update_version.sh | 2 +- .../distribtest/csharp_ubuntu1404_x64/Dockerfile | 5 +--- 7 files changed, 39 insertions(+), 50 deletions(-) delete mode 100644 test/distrib/csharp/DistribTest/DistribTest.project.json create mode 100644 test/distrib/csharp/DistribTest/DistribTestDotNet.csproj delete mode 100644 test/distrib/csharp/DistribTest/project.json (limited to 'tools/dockerfile') diff --git a/test/distrib/csharp/DistribTest/DistribTest.project.json b/test/distrib/csharp/DistribTest/DistribTest.project.json deleted file mode 100644 index 422545ea8f..0000000000 --- a/test/distrib/csharp/DistribTest/DistribTest.project.json +++ /dev/null @@ -1,11 +0,0 @@ -// This file exists only to prevent VS2015 from mistakenly picking up -// project.json file when building .csproj project. -// See https://github.com/Microsoft/msbuild/issues/394 -{ - "frameworks": { - "net45": { } - }, - "runtimes": { - "win": { } - } -} diff --git a/test/distrib/csharp/DistribTest/DistribTestDotNet.csproj b/test/distrib/csharp/DistribTest/DistribTestDotNet.csproj new file mode 100644 index 0000000000..f16a0f9959 --- /dev/null +++ b/test/distrib/csharp/DistribTest/DistribTestDotNet.csproj @@ -0,0 +1,27 @@ + + + + Exe + netcoreapp1.0;net45 + false + false + false + false + false + false + false + + + + + + + + + + + /usr/lib/mono/4.5-api + /usr/local/lib/mono/4.5-api + /Library/Frameworks/Mono.framework/Versions/Current/lib/mono/4.5-api + + \ No newline at end of file diff --git a/test/distrib/csharp/DistribTest/project.json b/test/distrib/csharp/DistribTest/project.json deleted file mode 100644 index 09266e5d4d..0000000000 --- a/test/distrib/csharp/DistribTest/project.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "buildOptions": { - "emitEntryPoint": true - }, - "dependencies": { - "Grpc.Auth": "__GRPC_NUGET_VERSION__", - "Grpc.Core": "__GRPC_NUGET_VERSION__", - // Necessary for native deps to get copied correctly. - "Microsoft.NETCore.Platforms": "1.0.1" - }, - "frameworks": { - "net45": { }, - "netcoreapp1.0": { - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - } - } - } - } -} diff --git a/test/distrib/csharp/run_distrib_test.sh b/test/distrib/csharp/run_distrib_test.sh index b96872725e..eee24d0e57 100755 --- a/test/distrib/csharp/run_distrib_test.sh +++ b/test/distrib/csharp/run_distrib_test.sh @@ -21,11 +21,6 @@ unzip -o "$EXTERNAL_GIT_ROOT/input_artifacts/csharp_nugets_windows_dotnetcli.zip ./update_version.sh auto -# With a recent-enough version of mono, the "nuget restore" command would -# restore packages based on project.json files, but we want to restore packages -# based on the net45 legacy "packages.config" file instead. -rm DistribTest/*project.json - nuget restore xbuild DistribTest.sln diff --git a/test/distrib/csharp/run_distrib_test_dotnetcli.sh b/test/distrib/csharp/run_distrib_test_dotnetcli.sh index 9e31945dfb..86c2d5231e 100755 --- a/test/distrib/csharp/run_distrib_test_dotnetcli.sh +++ b/test/distrib/csharp/run_distrib_test_dotnetcli.sh @@ -25,19 +25,22 @@ cd DistribTest # TODO(jtattermusch): make sure we don't pollute the global nuget cache with # the nugets being tested. -dotnet restore +dotnet restore DistribTestDotNet.csproj -dotnet build -dotnet publish +dotnet build DistribTestDotNet.csproj +dotnet publish -f netcoreapp1.0 DistribTestDotNet.csproj +dotnet publish -f net45 DistribTestDotNet.csproj + +ls -R bin # .NET 4.5 target after dotnet build -mono bin/Debug/net45/*-x64/DistribTest.exe +mono bin/Debug/net45/publish/DistribTestDotNet.exe # .NET 4.5 target after dotnet publish -mono bin/Debug/net45/*-x64/publish/DistribTest.exe +mono bin/Debug/net45/publish/DistribTestDotNet.exe # .NET Core target after dotnet build -dotnet exec bin/Debug/netcoreapp1.0/DistribTest.dll +dotnet exec bin/Debug/netcoreapp1.0/DistribTestDotNet.dll # .NET Core target after dotnet publish -dotnet exec bin/Debug/netcoreapp1.0/publish/DistribTest.dll +dotnet exec bin/Debug/netcoreapp1.0/publish/DistribTestDotNet.dll diff --git a/test/distrib/csharp/update_version.sh b/test/distrib/csharp/update_version.sh index 734ec21ba2..9759cc5648 100755 --- a/test/distrib/csharp/update_version.sh +++ b/test/distrib/csharp/update_version.sh @@ -28,4 +28,4 @@ then fi # Replaces version placeholder with value provided as first argument. -sed -ibak "s/__GRPC_NUGET_VERSION__/${CSHARP_VERSION}/g" DistribTest/packages.config DistribTest/DistribTest.csproj DistribTest/project.json +sed -ibak "s/__GRPC_NUGET_VERSION__/${CSHARP_VERSION}/g" DistribTest/packages.config DistribTest/DistribTest.csproj DistribTest/DistribTestDotNet.csproj diff --git a/tools/dockerfile/distribtest/csharp_ubuntu1404_x64/Dockerfile b/tools/dockerfile/distribtest/csharp_ubuntu1404_x64/Dockerfile index 4bd3763370..10279c5925 100644 --- a/tools/dockerfile/distribtest/csharp_ubuntu1404_x64/Dockerfile +++ b/tools/dockerfile/distribtest/csharp_ubuntu1404_x64/Dockerfile @@ -22,16 +22,13 @@ RUN apt-get update && apt-get install -y \ ca-certificates-mono \ nuget -# make sure we have nuget 2.12+ (in case there's an older cached docker image) -RUN apt-get update && apt-get install -y nuget - RUN apt-get update && apt-get install -y unzip # Install dotnet CLI RUN apt-get install -y apt-transport-https RUN sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' RUN apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 -RUN apt-get update && apt-get install -y dotnet-dev-1.0.0-preview2-003121 +RUN apt-get update && apt-get install -y dotnet-dev-1.0.4 # Trigger the population of the local package cache for dotnet CLI RUN mkdir warmup \ -- cgit v1.2.3 From 0d571a0674d42dc1d4e069d69f7fd463b4f3380b Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Wed, 16 May 2018 05:46:12 -0700 Subject: add mako to multilang dockerimage --- .../tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template | 3 +++ tools/dockerfile/test/multilang_jessie_x64/Dockerfile | 3 +++ 2 files changed, 6 insertions(+) (limited to 'tools/dockerfile') diff --git a/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template b/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template index 672e9fbb5c..ac687b710f 100644 --- a/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/multilang_jessie_x64/Dockerfile.template @@ -33,6 +33,9 @@ RUN pip install coverage ENV PATH ~/.local/bin:$PATH + # Install Mako to generate files in grpc/grpc-node + RUN pip install Mako + <%include file="../../run_tests_addons.include"/> # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile index e22484fbcd..40e13c385e 100644 --- a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile @@ -152,6 +152,9 @@ RUN python3.4 -m pip install virtualenv RUN pip install coverage ENV PATH ~/.local/bin:$PATH +# Install Mako to generate files in grpc/grpc-node +RUN pip install Mako + # Prepare ccache RUN ln -s /usr/bin/ccache /usr/local/bin/gcc RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -- cgit v1.2.3 From 80095a046c7338f0a7056e4cf5f0a6d83cb0e2aa Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Fri, 18 May 2018 00:29:31 +0200 Subject: regenerate dockerfiles --- tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile | 8 -------- .../dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_node/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_php/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_python/Dockerfile | 8 -------- tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile | 8 -------- tools/dockerfile/test/csharp_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/cxx_alpine_x64/Dockerfile | 8 -------- tools/dockerfile/test/cxx_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/cxx_jessie_x86/Dockerfile | 8 -------- tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile | 8 -------- tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile | 8 -------- tools/dockerfile/test/fuzzer/Dockerfile | 8 -------- tools/dockerfile/test/multilang_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/node_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/php7_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/php_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/python_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/python_pyenv_x64/Dockerfile | 8 -------- tools/dockerfile/test/ruby_jessie_x64/Dockerfile | 8 -------- tools/dockerfile/test/sanity/Dockerfile | 8 -------- 24 files changed, 192 deletions(-) (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile index e806ba5923..511e2932d6 100644 --- a/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile @@ -100,14 +100,6 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile index e806ba5923..511e2932d6 100644 --- a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile @@ -100,14 +100,6 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile index d3eb456e94..9ede89b78d 100644 --- a/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile @@ -68,14 +68,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile index 539a869a7b..14f8c6af1c 100644 --- a/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile @@ -77,14 +77,6 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile index 7f3b20aea2..efaa78851e 100644 --- a/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile @@ -62,14 +62,6 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile index d6e229f84a..e987d4c88e 100644 --- a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile @@ -57,14 +57,6 @@ RUN apt-get update && apt-get install -y time && apt-get clean RUN apt-get update && apt-get install -y \ git php5 php5-dev phpunit unzip -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile index 7ab80e1ef2..71a2381b77 100644 --- a/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile @@ -60,14 +60,6 @@ RUN cd /var/local/git/php-src \ && make \ && make install -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile index 94290f3620..dadd856740 100644 --- a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile @@ -68,14 +68,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile index 75e3314e2b..97c146bb53 100644 --- a/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile @@ -79,14 +79,6 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc" -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/csharp_jessie_x64/Dockerfile b/tools/dockerfile/test/csharp_jessie_x64/Dockerfile index 7a8e26d2a7..56bfb89925 100644 --- a/tools/dockerfile/test/csharp_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/csharp_jessie_x64/Dockerfile @@ -104,14 +104,6 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile index 3449af1e20..82333d305b 100644 --- a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile @@ -50,14 +50,6 @@ RUN git clone https://github.com/gflags/gflags.git && cd gflags && git checkout RUN cd gflags && cmake . && make && make install RUN ln -s /usr/local/include/gflags /usr/include/gflags -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile index f2517539b6..14b44b5655 100644 --- a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile @@ -105,14 +105,6 @@ RUN cd llvm-build && cmake \ ../llvm RUN make -C llvm-build -j 12 && make -C llvm-build install && rm -rf llvm-build -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_jessie_x86/Dockerfile b/tools/dockerfile/test/cxx_jessie_x86/Dockerfile index bb9c7511e3..84d811dbba 100644 --- a/tools/dockerfile/test/cxx_jessie_x86/Dockerfile +++ b/tools/dockerfile/test/cxx_jessie_x86/Dockerfile @@ -72,14 +72,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile b/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile index 65ff58e728..439baadc2c 100644 --- a/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile @@ -72,14 +72,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile b/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile index e926443134..b80249d2d8 100644 --- a/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile @@ -72,14 +72,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/fuzzer/Dockerfile b/tools/dockerfile/test/fuzzer/Dockerfile index a242492318..f89c51586b 100644 --- a/tools/dockerfile/test/fuzzer/Dockerfile +++ b/tools/dockerfile/test/fuzzer/Dockerfile @@ -105,14 +105,6 @@ RUN cd llvm-build && cmake \ ../llvm RUN make -C llvm-build -j 12 && make -C llvm-build install && rm -rf llvm-build -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile index 40e13c385e..98b8601b78 100644 --- a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile @@ -155,14 +155,6 @@ ENV PATH ~/.local/bin:$PATH # Install Mako to generate files in grpc/grpc-node RUN pip install Mako -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/node_jessie_x64/Dockerfile b/tools/dockerfile/test/node_jessie_x64/Dockerfile index f32b437b75..eb1867e6c5 100644 --- a/tools/dockerfile/test/node_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/node_jessie_x64/Dockerfile @@ -92,14 +92,6 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/php7_jessie_x64/Dockerfile b/tools/dockerfile/test/php7_jessie_x64/Dockerfile index e96be2769a..53ef7b3443 100644 --- a/tools/dockerfile/test/php7_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/php7_jessie_x64/Dockerfile @@ -79,14 +79,6 @@ RUN pip install --upgrade pip==10.0.1 RUN pip install virtualenv RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/php_jessie_x64/Dockerfile b/tools/dockerfile/test/php_jessie_x64/Dockerfile index 88ee267763..e884572640 100644 --- a/tools/dockerfile/test/php_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/php_jessie_x64/Dockerfile @@ -76,14 +76,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN apt-get update && apt-get install -y \ git php5 php5-dev phpunit unzip -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/python_jessie_x64/Dockerfile b/tools/dockerfile/test/python_jessie_x64/Dockerfile index bd9d55ed8a..c2b4c1845b 100644 --- a/tools/dockerfile/test/python_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/python_jessie_x64/Dockerfile @@ -72,14 +72,6 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/python_pyenv_x64/Dockerfile b/tools/dockerfile/test/python_pyenv_x64/Dockerfile index 6d72a1cc40..43854aa689 100644 --- a/tools/dockerfile/test/python_pyenv_x64/Dockerfile +++ b/tools/dockerfile/test/python_pyenv_x64/Dockerfile @@ -95,14 +95,6 @@ RUN pyenv local 3.5-dev 3.6-dev pypy-5.3.1 RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/ruby_jessie_x64/Dockerfile b/tools/dockerfile/test/ruby_jessie_x64/Dockerfile index 37d909a038..d6f7459685 100644 --- a/tools/dockerfile/test/ruby_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/ruby_jessie_x64/Dockerfile @@ -83,14 +83,6 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc" -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/sanity/Dockerfile b/tools/dockerfile/test/sanity/Dockerfile index 4885843aa4..5788f1f04b 100644 --- a/tools/dockerfile/test/sanity/Dockerfile +++ b/tools/dockerfile/test/sanity/Dockerfile @@ -113,14 +113,6 @@ ENV CLANG_FORMAT=clang-format RUN ln -s /clang+llvm-5.0.0-linux-x86_64-ubuntu14.04/bin/clang-tidy /usr/local/bin/clang-tidy ENV CLANG_TIDY=clang-tidy -# Prepare ccache -RUN ln -s /usr/bin/ccache /usr/local/bin/gcc -RUN ln -s /usr/bin/ccache /usr/local/bin/g++ -RUN ln -s /usr/bin/ccache /usr/local/bin/cc -RUN ln -s /usr/bin/ccache /usr/local/bin/c++ -RUN ln -s /usr/bin/ccache /usr/local/bin/clang -RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ - RUN mkdir /var/local/jenkins -- cgit v1.2.3 From 2e679e664d970360481bf9ff80e06df4160138c7 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Sat, 19 May 2018 06:25:35 -0700 Subject: Revert "Remove ccache from all docker images" --- templates/tools/dockerfile/ccache_setup.include | 7 +++++++ templates/tools/dockerfile/run_tests_addons.include | 4 ++-- templates/tools/dockerfile/run_tests_addons_nocache.include | 2 ++ .../tools/dockerfile/test/cxx_ubuntu1404_x64/Dockerfile.template | 2 +- tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile | 8 ++++++++ .../dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_node/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_php/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_python/Dockerfile | 8 ++++++++ tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile | 8 ++++++++ tools/dockerfile/test/csharp_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/cxx_alpine_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/cxx_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/cxx_jessie_x86/Dockerfile | 8 ++++++++ tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/fuzzer/Dockerfile | 8 ++++++++ tools/dockerfile/test/multilang_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/node_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/php7_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/php_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/python_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/python_pyenv_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/ruby_jessie_x64/Dockerfile | 8 ++++++++ tools/dockerfile/test/sanity/Dockerfile | 8 ++++++++ 28 files changed, 204 insertions(+), 3 deletions(-) create mode 100644 templates/tools/dockerfile/ccache_setup.include create mode 100644 templates/tools/dockerfile/run_tests_addons_nocache.include (limited to 'tools/dockerfile') diff --git a/templates/tools/dockerfile/ccache_setup.include b/templates/tools/dockerfile/ccache_setup.include new file mode 100644 index 0000000000..2a2de7fdab --- /dev/null +++ b/templates/tools/dockerfile/ccache_setup.include @@ -0,0 +1,7 @@ +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ diff --git a/templates/tools/dockerfile/run_tests_addons.include b/templates/tools/dockerfile/run_tests_addons.include index 74b01e386c..3f0a1899c5 100644 --- a/templates/tools/dockerfile/run_tests_addons.include +++ b/templates/tools/dockerfile/run_tests_addons.include @@ -1,2 +1,2 @@ - -RUN mkdir /var/local/jenkins +<%include file="ccache_setup.include"/> +<%include file="run_tests_addons_nocache.include"/> \ No newline at end of file diff --git a/templates/tools/dockerfile/run_tests_addons_nocache.include b/templates/tools/dockerfile/run_tests_addons_nocache.include new file mode 100644 index 0000000000..74b01e386c --- /dev/null +++ b/templates/tools/dockerfile/run_tests_addons_nocache.include @@ -0,0 +1,2 @@ + +RUN mkdir /var/local/jenkins diff --git a/templates/tools/dockerfile/test/cxx_ubuntu1404_x64/Dockerfile.template b/templates/tools/dockerfile/test/cxx_ubuntu1404_x64/Dockerfile.template index 3668c97bcd..56d8eff06e 100644 --- a/templates/tools/dockerfile/test/cxx_ubuntu1404_x64/Dockerfile.template +++ b/templates/tools/dockerfile/test/cxx_ubuntu1404_x64/Dockerfile.template @@ -20,6 +20,6 @@ <%include file="../../gcp_api_libraries.include"/> <%include file="../../python_deps.include"/> <%include file="../../cxx_deps.include"/> - <%include file="../../run_tests_addons.include"/> + <%include file="../../run_tests_addons_nocache.include"/> # Define the default command. CMD ["bash"] diff --git a/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile index 511e2932d6..e806ba5923 100644 --- a/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_csharp/Dockerfile @@ -100,6 +100,14 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile index 511e2932d6..e806ba5923 100644 --- a/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_csharpcoreclr/Dockerfile @@ -100,6 +100,14 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile index 9ede89b78d..d3eb456e94 100644 --- a/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_cxx/Dockerfile @@ -68,6 +68,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile index 14f8c6af1c..539a869a7b 100644 --- a/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_node/Dockerfile @@ -77,6 +77,14 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile index efaa78851e..7f3b20aea2 100644 --- a/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_nodepurejs/Dockerfile @@ -62,6 +62,14 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile index e987d4c88e..d6e229f84a 100644 --- a/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_php/Dockerfile @@ -57,6 +57,14 @@ RUN apt-get update && apt-get install -y time && apt-get clean RUN apt-get update && apt-get install -y \ git php5 php5-dev phpunit unzip +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile index 71a2381b77..7ab80e1ef2 100644 --- a/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_php7/Dockerfile @@ -60,6 +60,14 @@ RUN cd /var/local/git/php-src \ && make \ && make install +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile index dadd856740..94290f3620 100644 --- a/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_python/Dockerfile @@ -68,6 +68,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile index 97c146bb53..75e3314e2b 100644 --- a/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile +++ b/tools/dockerfile/interoptest/grpc_interop_ruby/Dockerfile @@ -79,6 +79,14 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc" +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/csharp_jessie_x64/Dockerfile b/tools/dockerfile/test/csharp_jessie_x64/Dockerfile index 56bfb89925..7a8e26d2a7 100644 --- a/tools/dockerfile/test/csharp_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/csharp_jessie_x64/Dockerfile @@ -104,6 +104,14 @@ RUN mkdir warmup \ && cd .. \ && rm -rf warmup +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile index 82333d305b..3449af1e20 100644 --- a/tools/dockerfile/test/cxx_alpine_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_alpine_x64/Dockerfile @@ -50,6 +50,14 @@ RUN git clone https://github.com/gflags/gflags.git && cd gflags && git checkout RUN cd gflags && cmake . && make && make install RUN ln -s /usr/local/include/gflags /usr/include/gflags +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile index 14b44b5655..f2517539b6 100644 --- a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile @@ -105,6 +105,14 @@ RUN cd llvm-build && cmake \ ../llvm RUN make -C llvm-build -j 12 && make -C llvm-build install && rm -rf llvm-build +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_jessie_x86/Dockerfile b/tools/dockerfile/test/cxx_jessie_x86/Dockerfile index 84d811dbba..bb9c7511e3 100644 --- a/tools/dockerfile/test/cxx_jessie_x86/Dockerfile +++ b/tools/dockerfile/test/cxx_jessie_x86/Dockerfile @@ -72,6 +72,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile b/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile index 439baadc2c..65ff58e728 100644 --- a/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_ubuntu1604_x64/Dockerfile @@ -72,6 +72,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile b/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile index b80249d2d8..e926443134 100644 --- a/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_ubuntu1710_x64/Dockerfile @@ -72,6 +72,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t # C++ dependencies RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/fuzzer/Dockerfile b/tools/dockerfile/test/fuzzer/Dockerfile index f89c51586b..a242492318 100644 --- a/tools/dockerfile/test/fuzzer/Dockerfile +++ b/tools/dockerfile/test/fuzzer/Dockerfile @@ -105,6 +105,14 @@ RUN cd llvm-build && cmake \ ../llvm RUN make -C llvm-build -j 12 && make -C llvm-build install && rm -rf llvm-build +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile index 98b8601b78..40e13c385e 100644 --- a/tools/dockerfile/test/multilang_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/multilang_jessie_x64/Dockerfile @@ -155,6 +155,14 @@ ENV PATH ~/.local/bin:$PATH # Install Mako to generate files in grpc/grpc-node RUN pip install Mako +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/node_jessie_x64/Dockerfile b/tools/dockerfile/test/node_jessie_x64/Dockerfile index eb1867e6c5..f32b437b75 100644 --- a/tools/dockerfile/test/node_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/node_jessie_x64/Dockerfile @@ -92,6 +92,14 @@ RUN /bin/bash -l -c "nvm install 6 && npm config set cache /tmp/npm-cache && npm RUN /bin/bash -l -c "nvm install 8 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm install 9 && npm config set cache /tmp/npm-cache && npm install -g npm" RUN /bin/bash -l -c "nvm alias default 9" +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/php7_jessie_x64/Dockerfile b/tools/dockerfile/test/php7_jessie_x64/Dockerfile index 53ef7b3443..e96be2769a 100644 --- a/tools/dockerfile/test/php7_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/php7_jessie_x64/Dockerfile @@ -79,6 +79,14 @@ RUN pip install --upgrade pip==10.0.1 RUN pip install virtualenv RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 twisted==17.5.0 +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/php_jessie_x64/Dockerfile b/tools/dockerfile/test/php_jessie_x64/Dockerfile index e884572640..88ee267763 100644 --- a/tools/dockerfile/test/php_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/php_jessie_x64/Dockerfile @@ -76,6 +76,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN apt-get update && apt-get install -y \ git php5 php5-dev phpunit unzip +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/python_jessie_x64/Dockerfile b/tools/dockerfile/test/python_jessie_x64/Dockerfile index c2b4c1845b..bd9d55ed8a 100644 --- a/tools/dockerfile/test/python_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/python_jessie_x64/Dockerfile @@ -72,6 +72,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/python_pyenv_x64/Dockerfile b/tools/dockerfile/test/python_pyenv_x64/Dockerfile index 43854aa689..6d72a1cc40 100644 --- a/tools/dockerfile/test/python_pyenv_x64/Dockerfile +++ b/tools/dockerfile/test/python_pyenv_x64/Dockerfile @@ -95,6 +95,14 @@ RUN pyenv local 3.5-dev 3.6-dev pypy-5.3.1 RUN curl https://bootstrap.pypa.io/get-pip.py | python3.4 RUN python3.4 -m pip install virtualenv +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/ruby_jessie_x64/Dockerfile b/tools/dockerfile/test/ruby_jessie_x64/Dockerfile index d6f7459685..37d909a038 100644 --- a/tools/dockerfile/test/ruby_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/ruby_jessie_x64/Dockerfile @@ -83,6 +83,14 @@ RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.1' >> ~/.bashrc" RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc" +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/test/sanity/Dockerfile b/tools/dockerfile/test/sanity/Dockerfile index 5788f1f04b..4885843aa4 100644 --- a/tools/dockerfile/test/sanity/Dockerfile +++ b/tools/dockerfile/test/sanity/Dockerfile @@ -113,6 +113,14 @@ ENV CLANG_FORMAT=clang-format RUN ln -s /clang+llvm-5.0.0-linux-x86_64-ubuntu14.04/bin/clang-tidy /usr/local/bin/clang-tidy ENV CLANG_TIDY=clang-tidy +# Prepare ccache +RUN ln -s /usr/bin/ccache /usr/local/bin/gcc +RUN ln -s /usr/bin/ccache /usr/local/bin/g++ +RUN ln -s /usr/bin/ccache /usr/local/bin/cc +RUN ln -s /usr/bin/ccache /usr/local/bin/c++ +RUN ln -s /usr/bin/ccache /usr/local/bin/clang +RUN ln -s /usr/bin/ccache /usr/local/bin/clang++ + RUN mkdir /var/local/jenkins -- cgit v1.2.3 From fba028ac6886fd53fc49d0106fe38d6e47b10cef Mon Sep 17 00:00:00 2001 From: Mehrdad Afshari Date: Sun, 20 May 2018 15:20:29 -0700 Subject: Add Python distribtests for Alpine Linux This is especially important as Alpine uses `musl` instead of `glibc` and requires a source build for gRPC Python. --- .../distribtest/python_dev_alpine3.7_x64/Dockerfile | 21 +++++++++++++++++++++ tools/run_tests/artifacts/distribtest_targets.py | 1 + 2 files changed, 22 insertions(+) create mode 100644 tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile new file mode 100644 index 0000000000..0fc3c31281 --- /dev/null +++ b/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile @@ -0,0 +1,21 @@ +# Copyright 2018 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM alpine:3.7 + +RUN apk add --update build-base python python-dev py-pip + +RUN pip install --upgrade pip + +RUN pip install virtualenv diff --git a/tools/run_tests/artifacts/distribtest_targets.py b/tools/run_tests/artifacts/distribtest_targets.py index 80adc20184..213325439e 100644 --- a/tools/run_tests/artifacts/distribtest_targets.py +++ b/tools/run_tests/artifacts/distribtest_targets.py @@ -327,6 +327,7 @@ def targets(): PythonDistribTest('linux', 'x64', 'ubuntu1204'), PythonDistribTest('linux', 'x64', 'ubuntu1404'), PythonDistribTest('linux', 'x64', 'ubuntu1604'), + PythonDistribTest('linux', 'x64', 'alpine3.7', source=True), PythonDistribTest('linux', 'x64', 'jessie', source=True), PythonDistribTest('linux', 'x86', 'jessie', source=True), PythonDistribTest('linux', 'x64', 'centos7', source=True), -- cgit v1.2.3 From 2751f01750c7d9cb2a515649b656bc9821c1452d Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Mon, 21 May 2018 17:55:36 +0200 Subject: regenerate dockerfiles --- tools/dockerfile/test/cxx_jessie_x64/Dockerfile | 9 +++++++-- tools/dockerfile/test/fuzzer/Dockerfile | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile index 14b44b5655..4dda0f0b9e 100644 --- a/tools/dockerfile/test/cxx_jessie_x64/Dockerfile +++ b/tools/dockerfile/test/cxx_jessie_x64/Dockerfile @@ -73,9 +73,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean #================= -# Update clang to a version with improved tsan and fuzzing capabilities +# Use cmake 3.6 from jessie-backports +# should only be used for images based on debian jessie. + +RUN echo "deb http://ftp.debian.org/debian jessie-backports main" | tee /etc/apt/sources.list.d/jessie-backports.list +RUN apt-get update && apt-get install -t jessie-backports -y cmake && apt-get clean -RUN apt-get update && apt-get -y install python cmake && apt-get clean +#================= +# Update clang to a version with improved tsan and fuzzing capabilities RUN git clone -n -b release_38 http://llvm.org/git/llvm.git && \ cd llvm && git checkout ad57503 && cd .. diff --git a/tools/dockerfile/test/fuzzer/Dockerfile b/tools/dockerfile/test/fuzzer/Dockerfile index f89c51586b..986cfcbada 100644 --- a/tools/dockerfile/test/fuzzer/Dockerfile +++ b/tools/dockerfile/test/fuzzer/Dockerfile @@ -73,9 +73,14 @@ RUN pip install futures==2.2.0 enum34==1.0.4 protobuf==3.5.2.post1 six==1.10.0 t RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean #================= -# Update clang to a version with improved tsan and fuzzing capabilities +# Use cmake 3.6 from jessie-backports +# should only be used for images based on debian jessie. + +RUN echo "deb http://ftp.debian.org/debian jessie-backports main" | tee /etc/apt/sources.list.d/jessie-backports.list +RUN apt-get update && apt-get install -t jessie-backports -y cmake && apt-get clean -RUN apt-get update && apt-get -y install python cmake && apt-get clean +#================= +# Update clang to a version with improved tsan and fuzzing capabilities RUN git clone -n -b release_38 http://llvm.org/git/llvm.git && \ cd llvm && git checkout ad57503 && cd .. -- cgit v1.2.3 From 07bbdde4ae7e61454bfb1024e6101e1d991abc5d Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Mon, 21 May 2018 17:57:28 +0200 Subject: upgrade cmake in C++ distribtest dockerfile --- tools/dockerfile/distribtest/cpp_jessie_x64/Dockerfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/distribtest/cpp_jessie_x64/Dockerfile b/tools/dockerfile/distribtest/cpp_jessie_x64/Dockerfile index 0e8186d40c..894f114951 100644 --- a/tools/dockerfile/distribtest/cpp_jessie_x64/Dockerfile +++ b/tools/dockerfile/distribtest/cpp_jessie_x64/Dockerfile @@ -27,6 +27,9 @@ RUN apt-get update && apt-get install -y \ pkg-config \ unzip && apt-get clean -RUN apt-get update && apt-get install -y cmake golang && apt-get clean +RUN apt-get update && apt-get install -y golang && apt-get clean + +RUN echo "deb http://ftp.debian.org/debian jessie-backports main" | tee /etc/apt/sources.list.d/jessie-backports.list +RUN apt-get update && apt-get install -t jessie-backports -y cmake && apt-get clean CMD ["bash"] -- cgit v1.2.3 From acad3cc9348aa175c8622c9b4300392471e71086 Mon Sep 17 00:00:00 2001 From: Mehrdad Afshari Date: Mon, 21 May 2018 10:29:15 -0700 Subject: Install bash in alpine distribtest image --- tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile b/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile index 0fc3c31281..24e3a4b2eb 100644 --- a/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile +++ b/tools/dockerfile/distribtest/python_dev_alpine3.7_x64/Dockerfile @@ -19,3 +19,9 @@ RUN apk add --update build-base python python-dev py-pip RUN pip install --upgrade pip RUN pip install virtualenv + +# bash is required for our test script invocation +# ideally, we want to fix the invocation mechanism +# so we can remove this, but it has to be here for +# now: +RUN apk add --update bash -- cgit v1.2.3