From 574b60ed0e670d2483bae5491497c3e03ee24a20 Mon Sep 17 00:00:00 2001 From: Peter Surda Date: Mon, 15 Feb 2021 09:20:27 +0100 Subject: [PATCH] Add Dockerfile for running test - run ./run-tests-in-docker.sh to run travis tests locally --- Dockerfile.travis | 64 ++++++++++++++++++++++++++++++++++++++++++ run-tests-in-docker.sh | 4 +++ 2 files changed, 68 insertions(+) create mode 100644 Dockerfile.travis create mode 100755 run-tests-in-docker.sh diff --git a/Dockerfile.travis b/Dockerfile.travis new file mode 100644 index 00000000..a36e98b0 --- /dev/null +++ b/Dockerfile.travis @@ -0,0 +1,64 @@ +FROM ubuntu:bionic AS pybm-travis-bionic + +ENV DEBIAN_FRONTEND noninteractive +ENV TRAVIS_SKIP_APT_UPDATE 1 + +RUN apt-get update + +RUN apt-get install -yq --no-install-suggests --no-install-recommends \ + software-properties-common + +RUN dpkg --add-architecture i386 + +RUN add-apt-repository ppa:deadsnakes/ppa + +RUN apt-get -y install sudo + +RUN apt-get install -yq --no-install-suggests --no-install-recommends \ + # travis xenial bionic + python-setuptools libssl-dev libpq-dev python-prctl python-dev \ + python-dev python-virtualenv python-pip virtualenv \ + # dpkg + python-minimal python-setuptools python-all python openssl libssl-dev \ + dh-apparmor debhelper dh-python python-msgpack python-qt4 python-stdeb \ + python-all-dev python-crypto python-psutil \ + fakeroot python-pytest \ + # Code quality + pylint python-pycodestyle python3-pycodestyle pycodestyle python-flake8 \ + python3-flake8 flake8 python-pyflakes python3-pyflakes pyflakes pyflakes3 \ + curl \ + # Wine + python python-pip wget wine-stable winetricks mingw-w64 wine32 wine64 xvfb \ + # Buildbot + python3-dev libffi-dev python3-setuptools \ + python3-pip \ + # python 3.7 + python3.7 python3.7-dev \ + # .travis.yml + build-essential libcap-dev tor \ + language-pack-en + +# cleanup +RUN rm -rf /var/lib/apt/lists/* + +RUN useradd -m -U builder + +RUN echo 'builder ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +# 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 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 /usr/local/bin/travis2bash.sh diff --git a/run-tests-in-docker.sh b/run-tests-in-docker.sh new file mode 100755 index 00000000..0664658e --- /dev/null +++ b/run-tests-in-docker.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +docker build -t pybm-travis-bionic -f Dockerfile.travis . +docker run pybm-travis-bionic