mirror of https://github.com/grpc/grpc.git
Support musllinux binary wheels on x64 and x86 (#28092)
* Support musllinux binary wheels * Skip aarach64 for now * Consolidate the difference of mktemp * Extend linux artifact building time && install bash for distribtest * Stop using grpc.tools, use grpc_tools * Update the README to use grpc_tools * Force static link libc++ for alpine binaries * Rebase recent build script changes * Install ccache for musllinux distribtest images * Revert timeout change to grpc_build_artifactspull/28850/head
parent
64fd698172
commit
cd4261b946
8 changed files with 127 additions and 6 deletions
@ -0,0 +1,20 @@ |
||||
# 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 python:3.10-alpine3.14 |
||||
|
||||
# Our test infrastructure demands bash |
||||
RUN apk update && apk add bash |
||||
|
||||
RUN pip3 install virtualenv |
@ -0,0 +1,37 @@ |
||||
# 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 quay.io/pypa/musllinux_1_1_x86_64:2021-11-15-a808c18 |
||||
|
||||
################################### |
||||
# Install Python build requirements |
||||
RUN /opt/python/cp36-cp36m/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp37-cp37m/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp38-cp38/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp39-cp39/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp310-cp310/bin/pip install --upgrade cython |
||||
|
||||
#================= |
||||
# Install ccache |
||||
|
||||
# Install ccache from source since ccache 3.x packaged with most linux distributions |
||||
# does not support Redis backend for caching. |
||||
RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/download/v4.5.1/ccache-4.5.1.tar.gz \ |
||||
&& tar -zxf ccache.tar.gz \ |
||||
&& cd ccache-4.5.1 \ |
||||
&& mkdir build && cd build \ |
||||
&& cmake -DCMAKE_BUILD_TYPE=Release -DZSTD_FROM_INTERNET=ON -DHIREDIS_FROM_INTERNET=ON .. \ |
||||
&& make -j4 && make install \ |
||||
&& cd ../.. \ |
||||
&& rm -rf ccache-4.5.1 ccache.tar.gz |
@ -0,0 +1,37 @@ |
||||
# 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 quay.io/pypa/musllinux_1_1_i686:2021-11-15-a808c18 |
||||
|
||||
################################### |
||||
# Install Python build requirements |
||||
RUN /opt/python/cp36-cp36m/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp37-cp37m/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp38-cp38/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp39-cp39/bin/pip install --upgrade cython |
||||
RUN /opt/python/cp310-cp310/bin/pip install --upgrade cython |
||||
|
||||
#================= |
||||
# Install ccache |
||||
|
||||
# Install ccache from source since ccache 3.x packaged with most linux distributions |
||||
# does not support Redis backend for caching. |
||||
RUN curl -sSL -o ccache.tar.gz https://github.com/ccache/ccache/releases/download/v4.5.1/ccache-4.5.1.tar.gz \ |
||||
&& tar -zxf ccache.tar.gz \ |
||||
&& cd ccache-4.5.1 \ |
||||
&& mkdir build && cd build \ |
||||
&& cmake -DCMAKE_BUILD_TYPE=Release -DZSTD_FROM_INTERNET=ON -DHIREDIS_FROM_INTERNET=ON .. \ |
||||
&& make -j4 && make install \ |
||||
&& cd ../.. \ |
||||
&& rm -rf ccache-4.5.1 ccache.tar.gz |
Loading…
Reference in new issue