Page MenuHomePhabricator

Speed up Travis CI builds by using cached Docker images instead of building them on every CI run
Closed, ResolvedPublic5 Estimated Story Points

Description

For the Fundraising Frontend we need a PHP environment with specific custom PHP extensions (intl, kontocheck). All our CI checks run in Docker containers with that environment. Currently, the Docker images are built on every CI run, even when they change infrequently. The code under test is mounted as a volume and not copied in the Dockerfile. Each build takes about 2 minutes, we have Docker 2 images, so at least 4 minutes could be saved on every run. Additionally, the log output in Travis would be much shorter, and readable since it would not show all the compile steps of the custom extensions.

Proposal:

  • Set up the "wmde" organization on Docker hub.
  • Set up automatic builds for wmde/fundraising-frontend, wmde/fundraising-frontend-xdebug and wmde/fundraising-frontend-phpstan
  • Use those images in .travis.yml of FundraisingFrontend