This repository has been archived on 2024-12-14. You can view files and clone it, but cannot push or open issues or pull requests.
PyBitmessage-2024-12-14/packages/docker/Dockerfile.bionic

94 lines
2.4 KiB
Docker
Raw Normal View History

FROM ubuntu:bionic AS base
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update
# Common apt packages
RUN apt-get install -yq --no-install-suggests --no-install-recommends \
software-properties-common build-essential libcap-dev libssl-dev \
python-all-dev python-setuptools wget xvfb
###############################################################################
FROM base AS appimage
RUN apt-get install -yq --no-install-suggests --no-install-recommends \
debhelper dh-apparmor dh-python python-stdeb fakeroot
COPY . /home/builder/src
WORKDIR /home/builder/src
RUN VERSION=$(python setup.py -V) \
&& python setup.py sdist \
&& python setup.py --command-packages=stdeb.command bdist_deb \
&& dpkg-deb -I deb_dist/pybitmessage_${VERSION}-1_amd64.deb
RUN buildscripts/appimage.sh
RUN VERSION=$(python setup.py -V) \
&& out/PyBitmessage-${VERSION}.glibc2.15-x86_64.AppImage \
--appimage-extract-and-run -t
###############################################################################
FROM base AS tox
RUN apt-get install -yq --no-install-suggests --no-install-recommends \
language-pack-en \
libffi-dev python3-dev python3-pip python3.8 python3.8-dev python3.8-venv \
python-msgpack python-pip python-qt4 python-six qt5dxcb-plugin tor
RUN python3.8 -m pip install setuptools wheel
RUN python3.8 -m pip install --upgrade pip tox virtualenv
RUN useradd -m -U builder
# copy sources
COPY . /home/builder/src
RUN chown -R builder.builder /home/builder/src
USER builder
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
WORKDIR /home/builder/src
ENTRYPOINT ["tox"]
###############################################################################
FROM base AS buildbot
# cleanup
RUN rm -rf /var/lib/apt/lists/*
# travis2bash
RUN wget -O /usr/local/bin/travis2bash.sh https://git.bitmessage.org/Bitmessage/buildbot-scripts/raw/branch/master/travis2bash.sh
RUN chmod +x /usr/local/bin/travis2bash.sh
# copy entrypoint
COPY packages/docker/buildbot-entrypoint.sh entrypoint.sh
RUN chmod +x entrypoint.sh
RUN useradd -m -U buildbot
RUN echo 'buildbot ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
USER buildbot
ENTRYPOINT /entrypoint.sh "$BUILDMASTER" "$WORKERNAME" "$WORKERPASS"
2021-12-03 17:41:55 +01:00
###############################################################################
2021-12-15 07:44:37 +01:00
FROM base AS appandroid
COPY . /home/builder/src
WORKDIR /home/builder/src
RUN chmod +x buildscripts/androiddev.sh
RUN buildscripts/androiddev.sh