mirror of https://github.com/grpc/grpc.git
Big dockerimage cleanup (#28010)
* use python3 for running run_tests.py * update dockerimage templates * update dockerfiles * fix bazel build in the bazel docker image * adjust run_tests.py to renamed php docker image * add previously forgotten new templates * add missing images * php dockerfile remove whitespaces * restore accidentally deleted binder_transport_apk image * add back cxx_buster_x64 image * add back php zts stretch image * add back binder_transport_apk image * fix bazel builds by temporarily adding back python2-dev * check_redundant_namespace_qualifiers.py to python3 * fix clang-tidy * make run_tests_matrix.py use python3 * fixup cxx_debian9 templates * regenerate * stop running dummy grpc-node tests for protobuf-at-head and boringssl-at-head jobs * remove cxx_buster image (replaced by cxx_debian9) * add back python_alpine_x64 image * run_tests_in_workspace using python3 * unbreak python macos basictests by partially reverting run_tests_matrix to python2 * fix cxx_gcc_X docker imagespull/28246/head
parent
ae65bb8f7f
commit
205d7569ea
127 changed files with 1872 additions and 1685 deletions
@ -1,34 +1,40 @@ |
|||||||
# Install Git and basic packages. |
#================= |
||||||
|
# Basic C core dependencies |
||||||
|
|
||||||
|
# C/C++ dependencies according to https://github.com/grpc/grpc/blob/master/BUILDING.md |
||||||
RUN apt-get update && apt-get install -y ${'\\'} |
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
autoconf ${'\\'} |
|
||||||
autotools-dev ${'\\'} |
|
||||||
build-essential ${'\\'} |
build-essential ${'\\'} |
||||||
bzip2 ${'\\'} |
autoconf ${'\\'} |
||||||
ccache ${'\\'} |
libtool ${'\\'} |
||||||
curl ${'\\'} |
pkg-config ${'\\'} |
||||||
dnsutils ${'\\'} |
&& apt-get clean |
||||||
|
|
||||||
|
# GCC |
||||||
|
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
gcc ${'\\'} |
gcc ${'\\'} |
||||||
gcc-multilib ${'\\'} |
gcc-multilib ${'\\'} |
||||||
git ${'\\'} |
g++ ${'\\'} |
||||||
golang ${'\\'} |
g++-multilib ${'\\'} |
||||||
gyp ${'\\'} |
&& apt-get clean |
||||||
lcov ${'\\'} |
|
||||||
|
# libc6 |
||||||
|
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
libc6 ${'\\'} |
libc6 ${'\\'} |
||||||
libc6-dbg ${'\\'} |
libc6-dbg ${'\\'} |
||||||
libc6-dev ${'\\'} |
libc6-dev ${'\\'} |
||||||
libgtest-dev ${'\\'} |
&& apt-get clean |
||||||
libtool ${'\\'} |
|
||||||
|
# Tools |
||||||
|
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
|
bzip2 ${'\\'} |
||||||
|
curl ${'\\'} |
||||||
|
dnsutils ${'\\'} |
||||||
|
git ${'\\'} |
||||||
|
lcov ${'\\'} |
||||||
make ${'\\'} |
make ${'\\'} |
||||||
perl ${'\\'} |
|
||||||
strace ${'\\'} |
strace ${'\\'} |
||||||
python-dev ${'\\'} |
time ${'\\'} |
||||||
python-setuptools ${'\\'} |
|
||||||
python-yaml ${'\\'} |
|
||||||
telnet ${'\\'} |
|
||||||
unzip ${'\\'} |
unzip ${'\\'} |
||||||
wget ${'\\'} |
wget ${'\\'} |
||||||
zip && apt-get clean |
zip ${'\\'} |
||||||
|
&& apt-get clean |
||||||
#================ |
|
||||||
# Build profiling |
|
||||||
RUN apt-get update && apt-get install -y time && apt-get clean |
|
||||||
|
@ -1,35 +0,0 @@ |
|||||||
# 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 ${'\\'} |
|
||||||
python3-dev ${'\\'} |
|
||||||
python3-setuptools ${'\\'} |
|
||||||
python3-yaml ${'\\'} |
|
||||||
telnet ${'\\'} |
|
||||||
unzip ${'\\'} |
|
||||||
wget ${'\\'} |
|
||||||
zip && ${'\\'} |
|
||||||
apt-get clean |
|
||||||
|
|
||||||
#================ |
|
||||||
# Build profiling |
|
||||||
RUN apt-get update && apt-get install -y time && apt-get clean |
|
@ -1,23 +0,0 @@ |
|||||||
# Install dependencies for pyenv |
|
||||||
RUN apt-get update && apt-get install -y ${'\\'} |
|
||||||
libbz2-dev ${'\\'} |
|
||||||
libncurses5-dev ${'\\'} |
|
||||||
libncursesw5-dev ${'\\'} |
|
||||||
libreadline-dev ${'\\'} |
|
||||||
libsqlite3-dev ${'\\'} |
|
||||||
libssl-dev ${'\\'} |
|
||||||
llvm ${'\\'} |
|
||||||
mercurial ${'\\'} |
|
||||||
zlib1g-dev && apt-get clean |
|
||||||
|
|
||||||
# Install Pyenv and dev Python versions 3.{5,6,7} |
|
||||||
RUN curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash |
|
||||||
ENV PATH /root/.pyenv/bin:$PATH |
|
||||||
RUN eval "$(pyenv init -)" |
|
||||||
RUN eval "$(pyenv virtualenv-init -)" |
|
||||||
RUN pyenv update |
|
||||||
RUN pyenv install 3.5-dev |
|
||||||
RUN pyenv install 3.6-dev |
|
||||||
RUN pyenv install 3.7-dev |
|
||||||
RUN pyenv install pypy-5.3.1 |
|
||||||
RUN pyenv local 3.5-dev 3.6-dev 3.7-dev pypy-5.3.1 |
|
@ -1,3 +0,0 @@ |
|||||||
# Install Python 2.7 |
|
||||||
RUN apt-get update && apt-get install -y python2.7 python-all-dev |
|
||||||
RUN curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python2.7 |
|
@ -1,3 +1,3 @@ |
|||||||
#================= |
#================= |
||||||
# C++ dependencies |
# C++ dependencies |
||||||
RUN apt-get update && apt-get -y install libgflags-dev libgtest-dev libc++-dev clang && apt-get clean |
RUN apt-get update && apt-get -y install libc++-dev clang && apt-get clean |
||||||
|
@ -1 +0,0 @@ |
|||||||
FROM debian:8 |
|
@ -1 +0,0 @@ |
|||||||
FROM debian:9 |
|
@ -1,2 +1,3 @@ |
|||||||
# Google Cloud platform API libraries |
# Google Cloud Platform API libraries |
||||||
RUN pip install --upgrade google-auth==1.24.0 google-api-python-client==1.12.8 oauth2client==4.1.0 |
# These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts) |
||||||
|
RUN python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0 |
||||||
|
@ -0,0 +1,44 @@ |
|||||||
|
%YAML 1.2 |
||||||
|
--- | |
||||||
|
# Copyright 2021 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 debian:stretch |
||||||
|
|
||||||
|
<%include file="../apt_get_basic.include"/> |
||||||
|
<%include file="../run_tests_python_deps.include"/> |
||||||
|
<%include file="../cmake.include"/> |
||||||
|
<%include file="../run_tests_addons.include"/> |
||||||
|
|
||||||
|
# Java required by Android SDK |
||||||
|
RUN apt-get update && apt-get -y install openjdk-8-jdk && apt-get clean |
||||||
|
|
||||||
|
# Install Android SDK |
||||||
|
ENV ANDROID_SDK_VERSION 4333796 |
||||||
|
RUN mkdir -p /opt/android-sdk && cd /opt/android-sdk && \ |
||||||
|
wget -q https://dl.google.com/android/repository/sdk-tools-linux-$ANDROID_SDK_VERSION.zip && \ |
||||||
|
unzip -q sdk-tools-linux-$ANDROID_SDK_VERSION.zip && \ |
||||||
|
rm sdk-tools-linux-$ANDROID_SDK_VERSION.zip |
||||||
|
ENV ANDROID_SDK_PATH /opt/android-sdk |
||||||
|
|
||||||
|
# Install Android NDK and cmake using sdkmanager |
||||||
|
RUN mkdir -p ~/.android && touch ~/.android/repositories.cfg |
||||||
|
RUN yes | $ANDROID_SDK_PATH/tools/bin/sdkmanager --licenses # accept all licenses |
||||||
|
RUN $ANDROID_SDK_PATH/tools/bin/sdkmanager ndk-bundle 'cmake;3.6.4111459' |
||||||
|
ENV ANDROID_NDK_PATH $ANDROID_SDK_PATH/ndk-bundle |
||||||
|
ENV ANDROID_SDK_CMAKE $ANDROID_SDK_PATH/cmake/3.6.4111459/bin/cmake |
||||||
|
|
||||||
|
# Define the default command. |
||||||
|
CMD ["bash"] |
||||||
|
|
@ -0,0 +1,41 @@ |
|||||||
|
# Pinned version of the base image is used to avoid regressions caused |
||||||
|
# by rebuilding of this docker image. To see available versions, you can run |
||||||
|
# "gcloud container images list-tags gcr.io/oss-fuzz-base/base-builder" |
||||||
|
# Image(c7f1523ebd92) is built on Jul 29, 2021 |
||||||
|
FROM gcr.io/oss-fuzz-base/base-builder@sha256:c7f1523ebd9234b9ff57e5240f8c06569143373be019c92f1e6df18a1e048f37 |
||||||
|
|
||||||
|
# -------------------------- WARNING -------------------------------------- |
||||||
|
# If you are making changes to this file, consider changing |
||||||
|
# https://github.com/google/oss-fuzz/blob/master/projects/grpc/Dockerfile |
||||||
|
# accordingly. |
||||||
|
# ------------------------------------------------------------------------- |
||||||
|
|
||||||
|
# Install basic packages and Bazel dependencies. |
||||||
|
RUN apt-get update && apt-get install -y software-properties-common python-software-properties |
||||||
|
RUN add-apt-repository ppa:webupd8team/java |
||||||
|
RUN apt-get update && apt-get -y install ${'\\'} |
||||||
|
autoconf ${'\\'} |
||||||
|
build-essential ${'\\'} |
||||||
|
curl ${'\\'} |
||||||
|
wget ${'\\'} |
||||||
|
libtool ${'\\'} |
||||||
|
make ${'\\'} |
||||||
|
openjdk-8-jdk ${'\\'} |
||||||
|
vim |
||||||
|
|
||||||
|
#==================== |
||||||
|
# Python dependencies |
||||||
|
|
||||||
|
# Install dependencies |
||||||
|
# TODO(jtattermusch): This installs python3.5. Is it even needed |
||||||
|
# when we install python3.6 in the next step? |
||||||
|
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
|
python3-all-dev |
||||||
|
|
||||||
|
<%include file="./compile_python_36.include"/> |
||||||
|
|
||||||
|
# Python2's python.h still needs to be present in order for the bazel build |
||||||
|
# to work. |
||||||
|
# TODO(jtattermusch): remove once https://github.com/grpc/grpc/issues/28026 |
||||||
|
# is fixed. |
||||||
|
RUN apt-get update && apt-get install -y python-all-dev python-setuptools |
@ -1,6 +0,0 @@ |
|||||||
FROM debian:bullseye |
|
||||||
|
|
||||||
<%include file="./apt_get_basic_bullseye.include"/> |
|
||||||
<%include file="./apt_get_python_27.include"/> |
|
||||||
<%include file="./gcp_api_libraries.include"/> |
|
||||||
<%include file="./run_tests_addons.include"/> |
|
@ -0,0 +1,4 @@ |
|||||||
|
FROM debian:bullseye |
||||||
|
|
||||||
|
<%include file="./apt_get_basic.include"/> |
||||||
|
<%include file="./run_tests_addons.include"/> |
@ -1,53 +0,0 @@ |
|||||||
FROM debian:bullseye |
|
||||||
|
|
||||||
# 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 ${'\\'} |
|
||||||
telnet ${'\\'} |
|
||||||
unzip ${'\\'} |
|
||||||
wget ${'\\'} |
|
||||||
zip && apt-get clean |
|
||||||
|
|
||||||
#================ |
|
||||||
# Build profiling |
|
||||||
RUN apt-get update && apt-get install -y time && apt-get clean |
|
||||||
|
|
||||||
# Install Python 3.7 from source (and installed as a default python3) |
|
||||||
# (Bullseye comes with Python 3.9 which isn't supported by pytype yet) |
|
||||||
RUN apt update && apt install -y build-essential zlib1g-dev libncurses5-dev libgdbm-dev ${'\\'} |
|
||||||
libnss3-dev libssl-dev libreadline-dev libffi-dev libbz2-dev |
|
||||||
RUN curl -O https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tar.xz && ${'\\'} |
|
||||||
tar -xf Python-3.7.9.tar.xz && ${'\\'} |
|
||||||
cd Python-3.7.9 && ${'\\'} |
|
||||||
./configure && ${'\\'} |
|
||||||
make -j 4 && ${'\\'} |
|
||||||
make install |
|
||||||
RUN curl https://bootstrap.pypa.io/get-pip.py | python3 |
|
||||||
|
|
||||||
# Install Python 2.7 |
|
||||||
RUN apt-get update && apt-get install -y python2 python2-dev |
|
||||||
RUN ln -s /usr/bin/python2 /usr/bin/python |
|
||||||
RUN curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python2 |
|
||||||
|
|
||||||
<%include file="./gcp_api_libraries.include"/> |
|
||||||
<%include file="./run_tests_addons.include"/> |
|
@ -1,15 +1,11 @@ |
|||||||
#==================== |
#==================== |
||||||
# Python dependencies |
# Python dependencies to run tools/run_tests scripts |
||||||
|
|
||||||
# Install dependencies |
# Install dependencies |
||||||
|
|
||||||
RUN apt-get update && apt-get install -y ${'\\'} |
RUN apt-get update && apt-get install -y python3-all-dev python3-pip |
||||||
python-all-dev ${'\\'} |
|
||||||
python3-all-dev ${'\\'} |
|
||||||
python-setuptools |
|
||||||
|
|
||||||
# Install Python packages from PyPI |
# Install Python packages from PyPI |
||||||
RUN curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python2.7 |
RUN python3 -m pip install --upgrade pip==19.3.1 |
||||||
RUN pip install --upgrade pip==19.3.1 |
RUN python3 -m pip install virtualenv==16.7.9 |
||||||
RUN pip install virtualenv==16.7.9 |
RUN python3 -m pip install futures==3.1.1 enum34==1.1.10 protobuf==3.5.2.post1 six==1.16.0 twisted==19.10.0 |
||||||
RUN pip install futures==3.1.1 enum34==1.1.10 protobuf==3.5.2.post1 six==1.16.0 twisted==19.10.0 |
|
||||||
|
@ -1,8 +1,6 @@ |
|||||||
FROM debian:stretch |
FROM debian:stretch |
||||||
|
|
||||||
<%include file="./apt_get_basic.include"/> |
<%include file="./apt_get_basic.include"/> |
||||||
<%include file="./apt_get_python_27.include"/> |
|
||||||
<%include file="./gcp_api_libraries.include"/> |
|
||||||
# Add Debian 'buster' repository, we will need it for installing newer versions of python |
# Add Debian 'buster' repository, we will need it for installing newer versions of python |
||||||
RUN echo 'deb http://ftp.de.debian.org/debian buster main' >> /etc/apt/sources.list |
RUN echo 'deb http://ftp.de.debian.org/debian buster main' >> /etc/apt/sources.list |
||||||
RUN echo 'APT::Default-Release "stretch";' | tee -a /etc/apt/apt.conf.d/00local |
RUN echo 'APT::Default-Release "stretch";' | tee -a /etc/apt/apt.conf.d/00local |
@ -0,0 +1,21 @@ |
|||||||
|
#==================== |
||||||
|
# run_tests.py python dependencies |
||||||
|
|
||||||
|
# Basic python dependencies to be able to run tools/run_tests python scripts |
||||||
|
# These dependencies are not sufficient to build gRPC Python, gRPC Python |
||||||
|
# deps are defined elsewhere (e.g. python_deps.include) |
||||||
|
RUN apt-get update && apt-get install -y ${'\\'} |
||||||
|
python3 ${'\\'} |
||||||
|
python3-pip ${'\\'} |
||||||
|
python3-setuptools ${'\\'} |
||||||
|
python3-yaml ${'\\'} |
||||||
|
&& apt-get clean |
||||||
|
|
||||||
|
# use pinned version of pip to avoid sudden breakages |
||||||
|
RUN python3 -m pip install --upgrade pip==19.3.1 |
||||||
|
|
||||||
|
# TODO(jtattermusch): currently six is needed for tools/run_tests scripts |
||||||
|
# but since our python2 usage is deprecated, we should get rid of it. |
||||||
|
RUN python3 -m pip install six==1.16.0 |
||||||
|
|
||||||
|
<%include file="./gcp_api_libraries.include"/> |
@ -0,0 +1,40 @@ |
|||||||
|
%YAML 1.2 |
||||||
|
--- | |
||||||
|
# Copyright 2021 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. |
||||||
|
|
||||||
|
<%include file="../../oss_fuzz_base.include"/> |
||||||
|
<%include file="../../bazel.include"/> |
||||||
|
|
||||||
|
#======================== |
||||||
|
# Android SDK/NDK installation |
||||||
|
ENV SDK_ROOT=/opt/android-sdk |
||||||
|
RUN mkdir -p $SDK_ROOT |
||||||
|
RUN wget -O cmd.zip dl.google.com/android/repository/commandlinetools-linux-7302050_latest.zip && \ |
||||||
|
unzip cmd.zip && rm cmd.zip && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'tools' && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'platform-tools' && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'build-tools;30.0.3' && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'platforms;android-29' && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'ndk-bundle' && \ |
||||||
|
yes | ./cmdline-tools/bin/sdkmanager --sdk_root=$SDK_ROOT 'ndk;21.4.7075529' |
||||||
|
|
||||||
|
# Set environment variables for Bazel rules |
||||||
|
ENV ANDROID_HOME=/opt/android-sdk |
||||||
|
ENV ANDROID_NDK_HOME=/opt/android-sdk/ndk/21.4.7075529 |
||||||
|
|
||||||
|
RUN mkdir -p /var/local/jenkins |
||||||
|
|
||||||
|
# Define the default command. |
||||||
|
CMD ["bash"] |
@ -0,0 +1,49 @@ |
|||||||
|
%YAML 1.2 |
||||||
|
--- | |
||||||
|
# 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.11 |
||||||
|
|
||||||
|
# Install Git and basic packages. |
||||||
|
RUN apk update && apk add \ |
||||||
|
autoconf \ |
||||||
|
automake \ |
||||||
|
bzip2 \ |
||||||
|
build-base \ |
||||||
|
cmake \ |
||||||
|
ccache \ |
||||||
|
curl \ |
||||||
|
gcc \ |
||||||
|
git \ |
||||||
|
libtool \ |
||||||
|
linux-headers \ |
||||||
|
make \ |
||||||
|
perl \ |
||||||
|
strace \ |
||||||
|
python3-dev \ |
||||||
|
py3-pip \ |
||||||
|
unzip \ |
||||||
|
wget \ |
||||||
|
zip |
||||||
|
|
||||||
|
RUN ln -s /usr/bin/pip3 /usr/bin/pip |
||||||
|
RUN ln -s /usr/bin/python3 /usr/bin/python |
||||||
|
|
||||||
|
# Install Python packages from PyPI |
||||||
|
RUN python3 -m pip install --upgrade pip==19.3.1 |
||||||
|
RUN python3 -m pip install virtualenv |
||||||
|
RUN python3 -m pip install futures==3.1.1 enum34==1.1.10 protobuf==3.5.2.post1 six==1.16.0 |
||||||
|
|
||||||
|
<%include file="../../gcp_api_libraries.include"/> |
@ -1,17 +0,0 @@ |
|||||||
%YAML 1.2 |
|
||||||
--- | |
|
||||||
# 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. |
|
||||||
|
|
||||||
<%include file="../../python_stretch.include"/> |
|
@ -1,46 +0,0 @@ |
|||||||
# 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:latest |
|
||||||
|
|
||||||
RUN apt-get update && apt-get install -y \ |
|
||||||
cmake \ |
|
||||||
g++ \ |
|
||||||
gcc \ |
|
||||||
git \ |
|
||||||
make \ |
|
||||||
python \ |
|
||||||
&& apt-get clean |
|
||||||
|
|
||||||
RUN git clone -b release_36 http://llvm.org/git/llvm.git |
|
||||||
RUN git clone -b release_36 http://llvm.org/git/clang.git |
|
||||||
RUN git clone -b release_36 http://llvm.org/git/compiler-rt.git |
|
||||||
RUN git clone -b release_36 http://llvm.org/git/clang-tools-extra.git |
|
||||||
RUN git clone -b release_36 http://llvm.org/git/libcxx.git |
|
||||||
RUN git clone -b release_36 http://llvm.org/git/libcxxabi.git |
|
||||||
|
|
||||||
RUN mv clang llvm/tools |
|
||||||
RUN mv compiler-rt llvm/projects |
|
||||||
RUN mv clang-tools-extra llvm/tools/clang/tools |
|
||||||
RUN mv libcxx llvm/projects |
|
||||||
RUN mv libcxxabi llvm/projects |
|
||||||
|
|
||||||
RUN mkdir llvm-build |
|
||||||
RUN cd llvm-build && cmake \ |
|
||||||
-DCMAKE_BUILD_TYPE:STRING=Release \ |
|
||||||
-DLLVM_TARGETS_TO_BUILD:STRING=X86 \ |
|
||||||
../llvm |
|
||||||
RUN make -C llvm-build && make -C llvm-build install && rm -rf llvm-build |
|
||||||
|
|
||||||
CMD ["bash"] |
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue