This commit is contained in:
36
docker/Dockerfile.test
Normal file
36
docker/Dockerfile.test
Normal file
@@ -0,0 +1,36 @@
|
||||
FROM docker.io/swift:6.2-noble
|
||||
|
||||
# Make sure all system packages are up to date, and install only essential packages.
|
||||
RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true \
|
||||
&& apt-get -q update \
|
||||
&& apt-get -q dist-upgrade -y \
|
||||
&& apt-get -q install -y \
|
||||
libjemalloc2 \
|
||||
ca-certificates \
|
||||
tzdata \
|
||||
# If your app or its dependencies import FoundationNetworking, also install `libcurl4`.
|
||||
libcurl4 \
|
||||
# If your app or its dependencies import FoundationXML, also install `libxml2`.
|
||||
# libxml2 \
|
||||
sqlite3 \
|
||||
&& rm -r /var/lib/apt/lists/*
|
||||
|
||||
# Set up a build area
|
||||
WORKDIR /app
|
||||
|
||||
# First just resolve dependencies.
|
||||
# This creates a cached layer that can be reused
|
||||
# as long as your Package.swift/Package.resolved
|
||||
# files do not change.
|
||||
COPY ./Package.* ./
|
||||
RUN swift package resolve \
|
||||
$([ -f ./Package.resolved ] && echo "--force-resolved-versions" || true)
|
||||
|
||||
# Copy entire repo into container
|
||||
COPY . .
|
||||
|
||||
ENV SWIFT_BACKTRACE=enable=no
|
||||
ENV LOG_LEVEL=debug
|
||||
|
||||
CMD ["swift", "test"]
|
||||
|
||||
Reference in New Issue
Block a user