mirror of
https://gitlab.com/d3tn/ud3tn.git
synced 2026-08-17 13:07:35 +02:00
This provides two new Dockerfiles for testing, one just containing ION and one with an additional Python3 virtual environment for interoperability testing. Additionally, two scripts are provided: * build_docker_images.sh: build images that can be pushed to the registry and then used by the CI toolchain * prepare_for_test.sh: a script to be run inside a newly created Docker container based on the provided `ion-interop` image, to build uD3TN and add the Python modules from the uD3TN source tree efficiently Signed-off-by: Felix Walter <felix.walter@d3tn.com>
36 lines
1.4 KiB
Text
36 lines
1.4 KiB
Text
# ION Dockerfile that contains the Python dependencies for interoperability tests
|
|
|
|
FROM buildpack-deps:bullseye
|
|
|
|
RUN apt-get update && \
|
|
apt-get dist-upgrade -y && \
|
|
apt-get install python3-venv python3-pip -y && \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
ARG ION_FILE=ion-open-source-4.1.2.tar.gz
|
|
|
|
RUN mkdir /ion_build && cd /ion_build && \
|
|
wget -O "$ION_FILE" "https://sourceforge.net/projects/ion-dtn/files/$ION_FILE/download?use_mirror=netcologne&ts=$(date +%s)" && \
|
|
tar -xvf "$ION_FILE" && \
|
|
rm "$ION_FILE"
|
|
|
|
RUN cd /ion_build/ion-open-source* && \
|
|
CPPFLAGS=-Wno-maybe-uninitialized ./configure && \
|
|
make -j4 && \
|
|
make install && \
|
|
ldconfig && \
|
|
cd / && \
|
|
rm -r /ion_build
|
|
|
|
COPY ./pyd3tn/requirements.txt /req-pyd3tn.txt
|
|
COPY ./python-ud3tn-utils/requirements.txt /req-utils.txt
|
|
COPY ./test/integration/requirements.txt /req-test.txt
|
|
COPY ./tools/analysis/requirements.txt /req-analysis.txt
|
|
|
|
RUN python3 -m venv /ud3tn_venv && \
|
|
/ud3tn_venv/bin/python -m pip install --no-cache-dir -U setuptools pip wheel && \
|
|
/ud3tn_venv/bin/python -m pip install --no-cache-dir -U -r /req-pyd3tn.txt && \
|
|
/ud3tn_venv/bin/python -m pip install --no-cache-dir -U -r /req-utils.txt && \
|
|
/ud3tn_venv/bin/python -m pip install --no-cache-dir -U -r /req-test.txt && \
|
|
/ud3tn_venv/bin/python -m pip install --no-cache-dir -U -r /req-analysis.txt
|