Skip to content

Commit

Permalink
buildmaster: add static apk utility
Browse files Browse the repository at this point in the history
We need apk to sign packages.adb, this is unreleased version introduced
in commit ef8c1adb6118 ("apk: switch to index-trust branch"), thus not
available already anywhere yet. So until its available, lets build a
static version and use that meanwhile.

Fixes: a94d4e1 ("add APK signing logic")
Signed-off-by: Petr Štetiar <ynezz@true.cz>
  • Loading branch information
ynezz committed Sep 24, 2024
1 parent f1a1a62 commit c234fd4
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 0 deletions.
27 changes: 27 additions & 0 deletions docker/buildmaster/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
FROM alpinelinux/build-base:latest-x86_64 AS apk-builder

RUN abuild-apk add -u \
gcc \
git \
linux-headers \
lua5.3-dev \
lua5.3-lzlib \
make \
musl-dev \
openssl-dev \
openssl-libs-static \
zlib-dev \
zlib-static \
zstd-dev \
zstd-static

ARG APK_TOOLS_COMMIT=54caa31be633efc5f655700b77af290124f71689

RUN git clone https://gitlab.alpinelinux.org/alpine/apk-tools.git /tmp/apk-tools
WORKDIR /tmp/apk-tools
RUN git fetch --depth=1 origin $APK_TOOLS_COMMIT
RUN git reset --hard $APK_TOOLS_COMMIT
RUN make -j$(nproc) static


FROM debian:11
MAINTAINER OpenWrt Maintainers

Expand Down Expand Up @@ -55,6 +81,7 @@ COPY docker/buildmaster/files/start.sh /start.sh
COPY phase1 /phase1
COPY phase2 /phase2
COPY scripts /scripts
COPY --from=apk-builder /tmp/apk-tools/src/apk.static /usr/bin/apk

RUN \
groupadd buildbot && \
Expand Down
4 changes: 4 additions & 0 deletions tests/cram/master/02-apk.t
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Check that apk is available and usable in master container:

$ docker run --entrypoint apk local/master | grep usage
usage: apk [<OPTIONS>...] COMMAND [<ARGUMENTS>...]

0 comments on commit c234fd4

Please sign in to comment.