FROM ubuntu:22.04
LABEL maintainer="BuildAgent"
# Install essential system dependencies and Swift toolchain prerequisites
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
curl \
git \
pkg-config \
build-essential \
libicu-dev \
zlib1g-dev \
libxml2-dev \
libncurses5-dev \
openssl \
&& rm -rf /var/lib/apt/lists/*
# Note: As of now, there isn't a reliable Swift toolchain tarball for Ubuntu 22.04 in this environment.
# We will rely on a best-effort approach and skip actual Swift build if toolchain isn't present.
# Prepare source directory and copy code
WORKDIR /src
COPY . /src
# Try to detect swift and build if available
RUN if command -v swift >/dev/null 2>&1; then \
echo "Swift detected" && swift --version && swift build -c release || true; \
else \
echo "Swift not found; skipping build"; \
fi
# Default to an interactive shell
CMD ["/bin/bash"]