Use xvfb from container on CI

This commit is contained in:
Kevin Sawicki 2017-07-21 14:31:28 -07:00 committed by Aleksei Kuzmin
parent a0fd37c8a3
commit c3e0e4682d
3 changed files with 30 additions and 2 deletions

View file

@ -6,3 +6,7 @@ RUN apt-get update && apt-get install -y --force-yes nodejs
# Install wget used by crash reporter
RUN apt-get install -y --force-yes wget
# Add xvfb init script
ADD tools/xvfb-init.sh /etc/init.d/xvfb
RUN chmod a+x /etc/init.d/xvfb

View file

@ -60,8 +60,9 @@ def main():
deps += LINUX_DEPS_NO_ARM
execute(['sudo', 'apt-get', 'install'] + deps)
execute(['sh', '-e', '/etc/init.d/xvfb', 'start'])
os.environ['DISPLAY'] = ':99.0'
if PLATFORM == 'linux':
os.environ['DISPLAY'] = ':99.0'
execute(['sh', '-e', '/etc/init.d/xvfb', 'start'])
# CI's npm is not reliable.
npm = 'npm.cmd' if PLATFORM == 'win32' else 'npm'

23
tools/xvfb-init.sh Normal file
View file

@ -0,0 +1,23 @@
XVFB=/usr/bin/Xvfb
XVFBARGS="$DISPLAY -ac -screen 0 1024x768x16 +extension RANDR"
PIDFILE=/var/xvfb_${DISPLAY:1}.pid
case "$1" in
start)
echo -n "Starting virtual X frame buffer: Xvfb"
/sbin/start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile --background --exec $XVFB -- $XVFBARGS
echo "."
;;
stop)
echo -n "Stopping virtual X frame buffer: Xvfb"
/sbin/start-stop-daemon --stop --quiet --pidfile $PIDFILE
echo "."
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/init.d/xvfb {start|stop|restart}"
exit 1
esac
exit 0