diff options
author | Florian Dold <florian@dold.me> | 2023-07-05 20:30:23 +0200 |
---|---|---|
committer | Florian Dold <florian@dold.me> | 2023-07-05 20:30:23 +0200 |
commit | 273f6a52f590f27898babfd73ae1c4d72f672ef8 (patch) | |
tree | 4491618fbd8003f0bd22b3ffbcdaec5247bc2e19 /sandcastle/images/base/Dockerfile | |
parent | cb2d2217d6a624a82d6f7331a5038b7ea5b2a5e0 (diff) | |
download | deployment-273f6a52f590f27898babfd73ae1c4d72f672ef8.tar.gz deployment-273f6a52f590f27898babfd73ae1c4d72f672ef8.tar.bz2 deployment-273f6a52f590f27898babfd73ae1c4d72f672ef8.zip |
sandcastle: granular, file-based tagging and rebuilding
Diffstat (limited to 'sandcastle/images/base/Dockerfile')
-rw-r--r-- | sandcastle/images/base/Dockerfile | 60 |
1 files changed, 32 insertions, 28 deletions
diff --git a/sandcastle/images/base/Dockerfile b/sandcastle/images/base/Dockerfile index 7bf6e65..d43ab65 100644 --- a/sandcastle/images/base/Dockerfile +++ b/sandcastle/images/base/Dockerfile @@ -46,9 +46,10 @@ RUN pip3 install --break-system-packages requests click poetry uwsgi htmlark FROM base-system AS mhd WORKDIR / -COPY buildconfig/tags.sh tags.sh -RUN . /tags.sh && git clone git://git.gnunet.org/libmicrohttpd \ - --branch ${TAG_LIBMHD:-master} +COPY buildconfig/libmhd.tag /buildconfig/ +RUN TAG=$(cat /buildconfig/libmhd.tag) && \ + git clone git://git.gnunet.org/libmicrohttpd \ + --branch $TAG WORKDIR /libmicrohttpd RUN ./bootstrap RUN ./configure --disable-doc @@ -56,9 +57,11 @@ RUN make install WORKDIR / FROM mhd AS gnunet +COPY buildconfig/gnunet.tag /buildconfig/ WORKDIR / -RUN . /tags.sh && git clone git://git.gnunet.org/gnunet \ - --branch ${TAG_GNUNET:-master} +RUN TAG=$(cat /buildconfig/gnunet.tag) && \ + git clone git://git.gnunet.org/gnunet \ + --branch $TAG WORKDIR /gnunet RUN ./bootstrap RUN ./configure --enable-logging=verbose --disable-documentation @@ -67,20 +70,11 @@ WORKDIR / FROM gnunet AS exchange WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/exchange \ - --branch ${TAG_EXCHANGE:-master} +COPY buildconfig/exchange.tag /buildconfig/ +RUN TAG=$(cat /buildconfig/exchange.tag) && \ + git clone git://git.taler.net/exchange \ + --branch $TAG WORKDIR /exchange -RUN if . /tags.sh && test "${TAG_EXCHANGE:-}" = "v0.9.0"; then \ - # Init Gana and checkout the v0.9.0-compatible commit. - git submodule init contrib/gana; \ - git submodule update --remote contrib/gana; \ - # Note: without init first, the following checkout hits "reference is not a tree". - git -C contrib/gana checkout 6b9824cb4d4561f1167c7f518998a226a82222d6; \ - # Remove master branch tracking the remote - git -C contrib/gana branch -d master; \ - git -C contrib/gana remote set-url origin .; \ - git -C contrib/gana branch master; \ -fi RUN ./bootstrap RUN ./configure CFLAGS="-ggdb -O0" --enable-logging=verbose --disable-doc RUN make install @@ -88,8 +82,10 @@ WORKDIR / FROM exchange AS merchant WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/merchant \ - --branch ${TAG_MERCHANT:-master} +COPY buildconfig/merchant.tag /buildconfig/ +RUN TAG=$(cat /buildconfig/merchant.tag) && \ + git clone git://git.taler.net/merchant \ + --branch $TAG WORKDIR /merchant RUN ./bootstrap RUN ./configure CFLAGS="-ggdb -O0" \ @@ -100,8 +96,10 @@ WORKDIR / FROM base-system AS libeufin WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/libeufin \ - --branch ${TAG_LIBEUFIN:-master} +COPY buildconfig/libeufin.tag /buildconfig/ +RUN TAG=$(cat buildconfig/libeufin.tag) && \ + git clone git://git.taler.net/libeufin \ + --branch $TAG WORKDIR /libeufin RUN ./bootstrap RUN ./configure @@ -110,8 +108,10 @@ WORKDIR / FROM base-system AS taler-merchant-demos WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/taler-merchant-demos \ - --branch ${TAG_MERCHANT_DEMOS:-master} +COPY buildconfig/merchant-demos.tag /buildconfig/ +RUN TAG=$(cat buildconfig/merchant-demos.tag) && \ + git clone git://git.taler.net/taler-merchant-demos \ + --branch $TAG WORKDIR /taler-merchant-demos RUN ./bootstrap RUN ./configure @@ -120,8 +120,10 @@ WORKDIR / FROM base-system AS wallet-core WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/wallet-core \ - --branch ${TAG_WALLET:-master} +COPY buildconfig/wallet.tag /buildconfig/ +RUN TAG=$(cat /buildconfig/wallet.tag) && \ + git clone git://git.taler.net/wallet-core \ + --branch $TAG RUN npm install -g pnpm@^7.0.0 WORKDIR /wallet-core RUN ./bootstrap @@ -135,9 +137,11 @@ RUN make install WORKDIR / FROM merchant AS sync +COPY buildconfig/sync.tag /buildconfig/ WORKDIR / -RUN . /tags.sh && git clone git://git.taler.net/sync \ - --branch ${TAG_SYNC:-master} +RUN TAG=$(cat buildconfig/sync.tag) && \ + git clone git://git.taler.net/sync \ + --branch $TAG WORKDIR /sync RUN ./bootstrap RUN ./configure CFLAGS="-ggdb -O0" \ |