Bug 1443437 - Pre-build font cache for Firefox i386 binaries on x86_64 systems. draft
authorHenrik Skupin <mail@hskupin.info>
Wed, 07 Mar 2018 11:48:26 +0100
changeset 764225 06bcb69993d7191d57db413afce5c04a0a8c9ced
parent 762868 71edaf2bd1b01daffb805627623712bd329fb5f9
push id101706
push userbmo:hskupin@gmail.com
push dateWed, 07 Mar 2018 13:10:31 +0000
bugs1443437
milestone60.0a1
Bug 1443437 - Pre-build font cache for Firefox i386 binaries on x86_64 systems. In automation for both Linux and Linux64 the same docker image is used, which is based on Ubuntu 16.04 64bit. To run the 32bit Firefox binary the necessary libraries for the i386 architecture get installed. What's missing is the creation of the font cache for i386 binaries. As such it will be created at the first start of the appropriate application. It means there is an additional ~30s delay before Firefox opens, which causes several test failures especially for wdspec tests. To prevent this delay the i386 version of fontconfig will be installed and apt automatically creates the font cache for the i386 architecture by leaving the x86_64 cache in-place. So the cache creation will happen one time when the docker image is getting build, and not for each and every test job, which saves us 30s for each. MozReview-Commit-ID: 58xdOI4xYkP
taskcluster/docker/recipes/ubuntu1604-test-system-setup.sh
--- a/taskcluster/docker/recipes/ubuntu1604-test-system-setup.sh
+++ b/taskcluster/docker/recipes/ubuntu1604-test-system-setup.sh
@@ -162,16 +162,20 @@ apt-get -q -y -f install \
 sudo dpkg --add-architecture i386
 apt-get update
 apt-get -q -y -f install \
     libavcodec-ffmpeg-extra56:i386 \
     libgtk-3-0:i386 \
     libdbus-glib-1-2:i386 \
     openjdk-8-jdk:i386
 
+# use fc-cache:i386 to pre-build the font cache for i386 binaries
+apt-get -q -y -f install \
+    fontconfig:i386 \
+
 # revert the list of repos
 cp sources.list.orig /etc/apt/sources.list
 apt-get update
 
 # clean up
 cd /
 rm -rf /setup ~/.ccache ~/.cache ~/.npm
 apt-get clean