Refactor and split the Dockerfiles, to build a base without litesql
This commit is contained in:
@@ -1,69 +1,10 @@
|
||||
# This Dockerfile creates a docker image suitable to run biboumi’s build and
|
||||
# tests. For example, it can be used on with gitlab-ci.
|
||||
|
||||
FROM docker.io/debian:latest
|
||||
|
||||
RUN apt update
|
||||
|
||||
# Needed to build biboumi
|
||||
RUN apt install -y g++
|
||||
RUN apt install -y clang
|
||||
RUN apt install -y valgrind
|
||||
RUN apt install -y libudns-dev
|
||||
RUN apt install -y libsqlite3-dev
|
||||
RUN apt install -y libuuid1
|
||||
RUN apt install -y cmake
|
||||
RUN apt install -y make
|
||||
RUN apt install -y libexpat1-dev
|
||||
RUN apt install -y libidn11-dev
|
||||
RUN apt install -y uuid-dev
|
||||
RUN apt install -y libsystemd-dev
|
||||
RUN apt install -y pandoc
|
||||
RUN apt install -y libasan2
|
||||
RUN apt install -y libubsan0
|
||||
|
||||
# Needed to run tests
|
||||
RUN apt install -y git
|
||||
RUN apt install -y python3-lxml
|
||||
RUN apt install -y lcov
|
||||
|
||||
# Install botan
|
||||
RUN git clone https://github.com/randombit/botan.git
|
||||
RUN cd botan && ./configure.py --prefix=/usr && make -j8 && make install
|
||||
RUN rm -rf /botan
|
||||
FROM docker.louiz.org/biboumi-test-debian-base
|
||||
|
||||
# Install litesql
|
||||
RUN git clone git://git.louiz.org/litesql
|
||||
RUN mkdir /litesql/build && cd /litesql/build && cmake .. -DCMAKE_INSTALL_PREFIX=/usr && make -j8
|
||||
RUN cd /litesql/build && make install
|
||||
RUN rm -rf /litesql
|
||||
|
||||
RUN ldconfig
|
||||
|
||||
# Install slixmpp, for e2e tests
|
||||
RUN git clone https://github.com/saghul/aiodns.git
|
||||
RUN cd aiodns && python3 setup.py build && python3 setup.py install
|
||||
RUN apt install -y python3-pip
|
||||
RUN git clone git://git.louiz.org/slixmpp
|
||||
RUN pip3 install pyasn1
|
||||
RUN apt install -y python3-dev
|
||||
RUN cd slixmpp && python3 setup.py build && python3 setup.py install
|
||||
|
||||
RUN useradd tester -m
|
||||
|
||||
# Install charybdis, for e2e tests
|
||||
RUN apt install -y automake autoconf flex bison libltdl-dev openssl zlib1g-dev libssl-dev
|
||||
RUN apt install -y libtool
|
||||
RUN git clone https://github.com/charybdis-ircd/charybdis.git && cd charybdis
|
||||
RUN cd /charybdis && git checkout 4f2b9a4 && sed s/113/1113/ -i /charybdis/authd/providers/ident.c && ./autogen.sh && ./configure --prefix=/home/tester/ircd --bindir=/usr/bin && make -j8 && make install
|
||||
RUN chown -R tester:tester /home/tester/ircd
|
||||
RUN rm -rf /charybdis
|
||||
|
||||
RUN yes "" | openssl req -nodes -x509 -newkey rsa:4096 -keyout /home/tester/ircd/etc/ssl.key -out /home/tester/ircd/etc/ssl.pem
|
||||
|
||||
RUN apt install -y curl
|
||||
|
||||
ENV LC_ALL C.UTF-8
|
||||
RUN git clone git://git.louiz.org/litesql && mkdir /litesql/build && cd /litesql/build && cmake .. -DCMAKE_INSTALL_PREFIX=/usr && make -j8 && cd /litesql/build && make install && rm -rf /litesql && ldconfig
|
||||
|
||||
WORKDIR /home/tester
|
||||
USER tester
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
# This Dockerfile creates a docker image suitable to run biboumi’s build and
|
||||
# tests. For example, it can be used on with gitlab-ci.
|
||||
|
||||
FROM docker.io/debian:latest
|
||||
|
||||
ENV LC_ALL C.UTF-8
|
||||
|
||||
RUN apt update
|
||||
|
||||
# Needed to build biboumi
|
||||
RUN apt install -y g++\
|
||||
clang\
|
||||
valgrind\
|
||||
libudns-dev\
|
||||
libsqlite3-dev\
|
||||
libuuid1\
|
||||
cmake\
|
||||
make\
|
||||
libexpat1-dev\
|
||||
libidn11-dev\
|
||||
uuid-dev\
|
||||
libsystemd-dev\
|
||||
pandoc\
|
||||
libasan1\
|
||||
libubsan0\
|
||||
git\
|
||||
python3-lxml\
|
||||
lcov\
|
||||
libtool\
|
||||
python3-pip\
|
||||
python3-dev\
|
||||
automake\
|
||||
autoconf\
|
||||
flex\
|
||||
bison\
|
||||
libltdl-dev\
|
||||
openssl\
|
||||
zlib1g-dev\
|
||||
libssl-dev\
|
||||
curl
|
||||
|
||||
# Install botan
|
||||
RUN git clone https://github.com/randombit/botan.git && cd botan && ./configure.py --prefix=/usr && make -j8 && make install && rm -rf /botan
|
||||
|
||||
# Install slixmpp, for e2e tests
|
||||
RUN git clone https://github.com/saghul/aiodns.git && cd aiodns && git checkout 7ee13f9bea25784322~ && python3 setup.py build && python3 setup.py install && git clone git://git.louiz.org/slixmpp && pip3 install pyasn1 && cd slixmpp && python3 setup.py build && python3 setup.py install
|
||||
|
||||
RUN useradd tester -m
|
||||
|
||||
# Install charybdis, for e2e tests
|
||||
RUN git clone https://github.com/charybdis-ircd/charybdis.git && cd charybdis && cd /charybdis && git checkout 4f2b9a4 && sed s/113/1113/ -i /charybdis/authd/providers/ident.c && ./autogen.sh && ./configure --prefix=/home/tester/ircd --bindir=/usr/bin && make -j8 && make install && rm -rf /charybdis
|
||||
|
||||
RUN chown -R tester:tester /home/tester/ircd
|
||||
|
||||
RUN yes "" | openssl req -nodes -x509 -newkey rsa:4096 -keyout /home/tester/ircd/etc/ssl.key -out /home/tester/ircd/etc/ssl.pem
|
||||
Reference in New Issue
Block a user