Peter Šurda
e5e9955cd9
- add a ffmpeg process to kivy tests if it detects running inside docker - this approach can be reused for other tests that may benefit from a video - it may be possible to do this in bash, outside of python, but that would exacerbate the process synchronisation issues, as outlined here: - X server must be running before ffmpeg starts, otherwise ffmpeg can't record and quits - ffmpeg must end before the X server ends, as otherwise it segfaults and video will be incomplete - ffmpeg must start before the actual tests start and stop after the tests stop, otherwise a part of the tests will be missing from the recording - this approach I chose here avoids most synchronisation issues. If ffmpeg takes more than 2 seconds to start recording (unlikely), a part of the video will be missing. Also if for some reason ffmpeg is too slow, then also we may end up with a truncated video, at the end. - I chose lossless vp9 codec with webm format, this appears to work on firefox and chrome. Safari refuses to show the video even though it should be supported.
19 lines
389 B
Docker
19 lines
389 B
Docker
# A container for buildbot
|
|
FROM ubuntu:bionic AS kivy
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
ENV SKIPCACHE=2022-07-20
|
|
|
|
RUN apt-get update
|
|
|
|
RUN apt-get install -yq \
|
|
build-essential libcap-dev libssl-dev \
|
|
libmtdev-dev libpq-dev \
|
|
python3-dev python3-pip python3-virtualenv \
|
|
xvfb ffmpeg
|
|
|
|
RUN ln -sf /usr/bin/python3 /usr/bin/python
|
|
|
|
RUN pip3 install --upgrade setuptools pip
|