Merge pull request #7129 from ethereum/multiStageBuild

Use Docker multi-stage build.
This commit is contained in:
chriseth 2019-08-05 17:12:07 +02:00 committed by GitHub
commit 6ee97d7726
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -21,7 +21,7 @@
# #
# (c) 2016-2019 solidity contributors. # (c) 2016-2019 solidity contributors.
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
FROM buildpack-deps:disco FROM buildpack-deps:disco AS base
ARG DEBIAN_FRONTEND=noninteractive ARG DEBIAN_FRONTEND=noninteractive
@ -41,6 +41,8 @@ RUN set -ex; \
pip install codecov; \ pip install codecov; \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
FROM base AS libraries
# Aleth for end-to-end tests # Aleth for end-to-end tests
ARG ALETH_VERSION="1.6.0" ARG ALETH_VERSION="1.6.0"
ARG ALETH_HASH="7f7004e1563299bc57882e32b32e4a195747dfb6" ARG ALETH_HASH="7f7004e1563299bc57882e32b32e4a195747dfb6"
@ -115,7 +117,7 @@ RUN set -ex; \
# EVMONE # EVMONE
RUN set -ex; \ RUN set -ex; \
cd /usr/src; \ cd /usr/src; \
git clone --branch="v0.1.0" --recurse-submodules https://github.com/chfast/evmone.git; \ git clone --branch="v0.1.0" --recurse-submodules https://github.com/ethereum/evmone.git; \
cd evmone; \ cd evmone; \
mkdir build; \ mkdir build; \
cd build; \ cd build; \
@ -124,3 +126,7 @@ RUN set -ex; \
ninja install/strip; \ ninja install/strip; \
rm -rf /usr/src/evmone rm -rf /usr/src/evmone
FROM base
COPY --from=libraries /usr/lib /usr/lib
COPY --from=libraries /usr/bin /usr/bin
COPY --from=libraries /usr/include /usr/include