This commit is contained in:
toofar 2026-01-07 16:37:08 -08:00 committed by GitHub
commit 8257bb54cf
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 67 additions and 0 deletions

67
docker-compose.yml Normal file
View File

@ -0,0 +1,67 @@
# 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