feat(ci): use custom builder image

Jef Roosens 2024-07-07 13:30:12 +02:00
parent 68ce684c77
commit 2f1621175d
Signed by: Jef Roosens
GPG Key ID: B75D4F293C7052DB
3 changed files with 22 additions and 17 deletions

View File

@ -7,26 +7,14 @@ when:
steps:
build:
image: 'rust:1.79-alpine3.19'
environment:
- 'LIBARCHIVE_STATIC=1'
image: 'git.rustybever.be/chewing_bever/rieter-builder:1.79-alpine3.19'
commands:
# Dependencies required to statically compile libarchive and libsqlite3
- >
apk add --no-cache build-base
libarchive-static libarchive-dev
zlib-static
openssl-libs-static
bzip2-static
xz-static
expat-static
zstd-static
lz4-static
acl-static
- cargo build --verbose
# Binaries, even debug ones, should be statically compiled
- '[ "$(readelf -d target/debug/rieterd | grep NEEDED | wc -l)" = 0 ]'
clippy:
image: 'git.rustybever.be/chewing_bever/rieter-builder:1.79-alpine3.19'
# Clippy also performs a full build, so putting it here saves the CI a
# lot of work
- rustup component add clippy
- cargo clippy -- --no-deps -Dwarnings

View File

@ -7,7 +7,7 @@ when:
steps:
lint:
image: 'rust:1.79-alpine3.19'
image: 'git.rustybever.be/chewing_bever/rieter-builder:1.79-alpine3.19'
commands:
- rustup component add rustfmt
- cargo fmt -- --check

17
build.Dockerfile 100644
View File

@ -0,0 +1,17 @@
FROM rust:1.79-alpine3.19
# Dependencies required to statically compile libarchive and libsqlite3
RUN apk add --no-cache \
libarchive-static libarchive-dev \
zlib-static \
openssl-libs-static \
bzip2-static \
xz-static \
expat-static \
zstd-static \
lz4-static \
acl-static && \
rustup component add clippy rustfmt
# Tell the libarchive3-sys package to statically link libarchive
ENV LIBARCHIVE_STATIC=1