-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
28 lines (26 loc) · 1.2 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# Compilation ##################################################################
FROM archlinux:base as builder
WORKDIR /src
COPY . .
WORKDIR /src/build
RUN pacman -Syu --noconfirm python python-pip cmake gcc make boost protobuf && \
pip3 install --break-system-packages --upgrade pip setuptools && \
pip3 install --break-system-packages ortools protobuf==4.24.2 pyinstaller verboselogs coloredlogs numpy matplotlib binarytree sympy regex lark uuid svglib svg reportlab && \
cmake -DCMAKE_INSTALL_PREFIX=/fakeroot .. && \
make -j$(nproc) && \
make install
# Test Image ##################################################################
FROM archlinux:base as tester
RUN pacman -Syu --noconfirm python python-pip gcc boost-libs && \
pip3 install --break-system-packages --upgrade pip setuptools && \
pip3 install --break-system-packages robotframework
COPY --from=builder /fakeroot /usr
WORKDIR /work
RUN vs-testcase generate /usr/share/vesyla-suite/testcase && \
sh run.sh
# Final Image ##################################################################
FROM archlinux:base
RUN pacman -Syu --noconfirm gcc boost-libs
COPY --from=builder /fakeroot /usr
WORKDIR /work
ENTRYPOINT [ "/bin/bash" ]