# Holds common docker settings for running containerized tests. # # Examples: # docker-compose run archlinux-webkit tox -e py-qt5 -- tests/unit/browser/webengine/test_webenginesettings.py # docker-compose run archlinux-webengine-unstable-qt6 tox -e py -- tests/unit/browser/webengine/test_webenginesettings.py # IMAGE=python:3.8 docker-compose run other bash # # archlinux-* images are generated by scripts/dev/ci/docker/generate.py and # published from CI. # For other images, like python:3.8 or ubuntu:20.04, use # `IMAGE=python:3.8 docker-compose run other bash`. # See doc/contributing.asciidoc for more notes. # # `extends` might not work on some compose versions: https://stackoverflow.com/questions/36283908/re-using-environment-variables-in-docker-compose-yml # Env var interpolation (for the "other") service, might not work on older # compose versions. services: base: image: index.docker.io/library/python:3 environment: QUTE_TESTS_BACKEND: "webengine" # DISPLAY allows connecting applications in the container to a Xephyr display on # the host via the mounted /tmp/ directory below. # Run like: # Xephyr :27 -ac -resizeable -title qutetests -screen 1920x1080 -no-host-grab DISPLAY: ":27" # Since we are mounting the source dir from the host, move cache dirs # out of the work directory into the container so we can avoid conflicts # with permissions. TOX_WORK_DIR: "/home/user/.tox" HYPOTHESIS_EXAMPLES_DIR: "/home/user/.hypothesis/examples" # This tells tox to make the system site packages available in the # virtualenvs it creates, which lets you use the distro Qt when doing `tox -e py` VIRTUALENV_SYSTEM_SITE_PACKAGES: "true" working_dir: /work volumes: - /tmp/.X11-unix:/tmp/.X11-unix - type: bind source: $PWD target: /work read_only: true archlinux-webengine-unstable-qt6: extends: base image: index.docker.io/qutebrowser/ci:archlinux-webengine-unstable-qt6 archlinux-webengine-unstable: image: index.docker.io/qutebrowser/ci:archlinux-webengine-unstable extends: base archlinux-webengine-qt6: image: index.docker.io/qutebrowser/ci:archlinux-webengine-qt6 extends: base archlinux-webengine: image: index.docker.io/qutebrowser/ci:archlinux-webengine extends: base archlinux-webkit: image: index.docker.io/qutebrowser/ci:archlinux-webkit extends: base environment: QUTE_TESTS_BACKEND: "webkit" other: image: "${IMAGE}" extends: base