aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Lidi Zheng <lidiz@google.com>2018-10-22 11:08:45 -0700
committerGravatar Lidi Zheng <lidiz@google.com>2018-10-22 11:08:45 -0700
commit0dbd7831c3338e4e55eb953204cb8b26ed427ce0 (patch)
treea863a66877acd78802451bc89c36758de46ffaf1
parent1a74f991e1a7d39a609e7b127194649cb36e96c8 (diff)
Add different Dockerfile for each Python version
-rw-r--r--templates/tools/dockerfile/test/python_stretch_35_x64/Dockerfile.template29
-rw-r--r--templates/tools/dockerfile/test/python_stretch_36_x64/Dockerfile.template (renamed from templates/tools/dockerfile/test/python_stretch_x64/Dockerfile.template)4
-rw-r--r--templates/tools/dockerfile/test/python_stretch_37_x64/Dockerfile.template32
-rw-r--r--tools/dockerfile/test/python_stretch_35_x64/Dockerfile66
-rw-r--r--tools/dockerfile/test/python_stretch_36_x64/Dockerfile (renamed from tools/dockerfile/test/python_stretch_x64/Dockerfile)4
-rw-r--r--tools/dockerfile/test/python_stretch_37_x64/Dockerfile69
-rwxr-xr-xtools/run_tests/run_tests.py8
7 files changed, 204 insertions, 8 deletions
diff --git a/templates/tools/dockerfile/test/python_stretch_35_x64/Dockerfile.template b/templates/tools/dockerfile/test/python_stretch_35_x64/Dockerfile.template
new file mode 100644
index 0000000000..34beaa8a49
--- /dev/null
+++ b/templates/tools/dockerfile/test/python_stretch_35_x64/Dockerfile.template
@@ -0,0 +1,29 @@
+%YAML 1.2
+--- |
+ # Copyright 2018 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:stretch
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../gcp_api_libraries.include"/>
+
+ RUN apt-get update && apt-get install -y python2.7 python3.5 python-all-dev python3-all-dev
+
+ RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
+ RUN curl https://bootstrap.pypa.io/get-pip.py | python3.5
+
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
diff --git a/templates/tools/dockerfile/test/python_stretch_x64/Dockerfile.template b/templates/tools/dockerfile/test/python_stretch_36_x64/Dockerfile.template
index b897cace1e..cba11a88fd 100644
--- a/templates/tools/dockerfile/test/python_stretch_x64/Dockerfile.template
+++ b/templates/tools/dockerfile/test/python_stretch_36_x64/Dockerfile.template
@@ -22,12 +22,10 @@
# Install Python Versions from Debian 'testing' repository
RUN echo 'deb http://ftp.de.debian.org/debian testing main' >> /etc/apt/sources.list
RUN echo 'APT::Default-Release "stable";' | tee -a /etc/apt/apt.conf.d/00local
- RUN apt-get update && apt-get -t testing install -y python2.7 python3.5 python3.6 python3.7 python-all-dev python3-all-dev
+ RUN apt-get update && apt-get -t testing install -y python2.7 python3.6 python-all-dev python3-all-dev
RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
- RUN curl https://bootstrap.pypa.io/get-pip.py | python3.5
RUN curl https://bootstrap.pypa.io/get-pip.py | python3.6
- RUN curl https://bootstrap.pypa.io/get-pip.py | python3.7
<%include file="../../run_tests_addons.include"/>
# Define the default command.
diff --git a/templates/tools/dockerfile/test/python_stretch_37_x64/Dockerfile.template b/templates/tools/dockerfile/test/python_stretch_37_x64/Dockerfile.template
new file mode 100644
index 0000000000..9ae0ad14bb
--- /dev/null
+++ b/templates/tools/dockerfile/test/python_stretch_37_x64/Dockerfile.template
@@ -0,0 +1,32 @@
+%YAML 1.2
+--- |
+ # Copyright 2018 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:stretch
+
+ <%include file="../../apt_get_basic.include"/>
+ <%include file="../../gcp_api_libraries.include"/>
+
+ # Install Python Versions from Debian 'testing' repository
+ RUN echo 'deb http://ftp.de.debian.org/debian testing main' >> /etc/apt/sources.list
+ RUN echo 'APT::Default-Release "stable";' | tee -a /etc/apt/apt.conf.d/00local
+ RUN apt-get update && apt-get -t testing install -y python2.7 python3.7 python-all-dev python3-all-dev
+
+ RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
+ RUN curl https://bootstrap.pypa.io/get-pip.py | python3.7
+
+ <%include file="../../run_tests_addons.include"/>
+ # Define the default command.
+ CMD ["bash"]
diff --git a/tools/dockerfile/test/python_stretch_35_x64/Dockerfile b/tools/dockerfile/test/python_stretch_35_x64/Dockerfile
new file mode 100644
index 0000000000..fa4d3b820f
--- /dev/null
+++ b/tools/dockerfile/test/python_stretch_35_x64/Dockerfile
@@ -0,0 +1,66 @@
+# Copyright 2018 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:stretch
+
+# Install Git and basic packages.
+RUN apt-get update && apt-get install -y \
+ autoconf \
+ autotools-dev \
+ build-essential \
+ bzip2 \
+ ccache \
+ curl \
+ dnsutils \
+ gcc \
+ gcc-multilib \
+ git \
+ golang \
+ gyp \
+ lcov \
+ libc6 \
+ libc6-dbg \
+ libc6-dev \
+ libgtest-dev \
+ libtool \
+ make \
+ perl \
+ strace \
+ python-dev \
+ python-setuptools \
+ python-yaml \
+ telnet \
+ unzip \
+ wget \
+ zip && apt-get clean
+
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+# Google Cloud platform API libraries
+RUN apt-get update && apt-get install -y python-pip && apt-get clean
+RUN pip install --upgrade google-api-python-client oauth2client
+
+
+RUN apt-get update && apt-get install -y python2.7 python3.5 python-all-dev python3-all-dev
+
+RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
+RUN curl https://bootstrap.pypa.io/get-pip.py | python3.5
+
+
+RUN mkdir /var/local/jenkins
+
+# Define the default command.
+CMD ["bash"]
diff --git a/tools/dockerfile/test/python_stretch_x64/Dockerfile b/tools/dockerfile/test/python_stretch_36_x64/Dockerfile
index b325493637..988ecd9bf6 100644
--- a/tools/dockerfile/test/python_stretch_x64/Dockerfile
+++ b/tools/dockerfile/test/python_stretch_36_x64/Dockerfile
@@ -57,12 +57,10 @@ RUN pip install --upgrade google-api-python-client oauth2client
# Install Python Versions from Debian 'testing' repository
RUN echo 'deb http://ftp.de.debian.org/debian testing main' >> /etc/apt/sources.list
RUN echo 'APT::Default-Release "stable";' | tee -a /etc/apt/apt.conf.d/00local
-RUN apt-get update && apt-get -t testing install -y python2.7 python3.5 python3.6 python3.7 python-all-dev python3-all-dev
+RUN apt-get update && apt-get -t testing install -y python2.7 python3.6 python-all-dev python3-all-dev
RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
-RUN curl https://bootstrap.pypa.io/get-pip.py | python3.5
RUN curl https://bootstrap.pypa.io/get-pip.py | python3.6
-RUN curl https://bootstrap.pypa.io/get-pip.py | python3.7
RUN mkdir /var/local/jenkins
diff --git a/tools/dockerfile/test/python_stretch_37_x64/Dockerfile b/tools/dockerfile/test/python_stretch_37_x64/Dockerfile
new file mode 100644
index 0000000000..6da3379ed0
--- /dev/null
+++ b/tools/dockerfile/test/python_stretch_37_x64/Dockerfile
@@ -0,0 +1,69 @@
+# Copyright 2018 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:stretch
+
+# Install Git and basic packages.
+RUN apt-get update && apt-get install -y \
+ autoconf \
+ autotools-dev \
+ build-essential \
+ bzip2 \
+ ccache \
+ curl \
+ dnsutils \
+ gcc \
+ gcc-multilib \
+ git \
+ golang \
+ gyp \
+ lcov \
+ libc6 \
+ libc6-dbg \
+ libc6-dev \
+ libgtest-dev \
+ libtool \
+ make \
+ perl \
+ strace \
+ python-dev \
+ python-setuptools \
+ python-yaml \
+ telnet \
+ unzip \
+ wget \
+ zip && apt-get clean
+
+#================
+# Build profiling
+RUN apt-get update && apt-get install -y time && apt-get clean
+
+# Google Cloud platform API libraries
+RUN apt-get update && apt-get install -y python-pip && apt-get clean
+RUN pip install --upgrade google-api-python-client oauth2client
+
+
+# Install Python Versions from Debian 'testing' repository
+RUN echo 'deb http://ftp.de.debian.org/debian testing main' >> /etc/apt/sources.list
+RUN echo 'APT::Default-Release "stable";' | tee -a /etc/apt/apt.conf.d/00local
+RUN apt-get update && apt-get -t testing install -y python2.7 python3.7 python-all-dev python3-all-dev
+
+RUN curl https://bootstrap.pypa.io/get-pip.py | python2.7
+RUN curl https://bootstrap.pypa.io/get-pip.py | python3.7
+
+
+RUN mkdir /var/local/jenkins
+
+# Define the default command.
+CMD ["bash"]
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index a721c67245..86a46c10c9 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -759,8 +759,12 @@ class PythonLanguage(object):
self.python_manager_name(), _docker_arch_suffix(self.args.arch))
def python_manager_name(self):
- if self.args.compiler in ['python3.5', 'python3.6', 'python3.7']:
- return 'stretch'
+ if self.args.compiler == 'python3.5':
+ return 'stretch_35'
+ elif self.args.compiler == 'python3.6':
+ return 'stretch_36'
+ elif self.args.compiler == 'python3.7':
+ return 'stretch_37'
elif self.args.compiler == 'python_alpine':
return 'alpine'
else: