Page MenuHomePhabricator

Set up CI for MediaWiki-Docker
Open, Needs TriagePublic

Description

Currently there is no way to automatically validate changes to docker-compose.yml or the images it uses upstream.

We should figure out some way to do implement tests for the configuration YAML and relevant dev images so we can catch regressions.

One idea would be to have a job in CI that looks to see if a patch is touching docker-compose.yml. If so the job could ping a tool on a Cloud-VPS instance, and that tool would pull the patch, run docker-compose up -d and generally run through the install steps and assert that a MediaWiki site instance is running correctly at the end.

Event Timeline

kostajh created this task.Mar 29 2020, 11:17 AM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMar 29 2020, 11:17 AM

Maybe this is more trouble than it's worth though, and an alternative would be to provide the tooling so that MediaWiki-Docker can easily be set up in the various ways that Quibble wants (e.g. swap PHP version, database type, etc), and then reuse the same docker-compose stack for Quibble (see also T234902)

kostajh added a subscriber: Krinkle.Apr 9 2020, 1:29 PM

@Krinkle would you be open to using core's docker-compose.yml to provide the PHP and MySQL environment for core's Travis CI tests? We would first need to do T245444: Create PHP 7.3 and PHP 7.4 variants of docker-registry.wikimedia.org/dev/stretch-php72-fpm-apache2-xdebug, but after that it would be pretty straightforward to drop in as a replacement to the Travis PHP/MySQL environment.

I don't think Travis CI should be the main point of testing for MediaWiki-Docker (because external, and only post-merge). Do we have a Jenkins job on our end for it already and/or is there one in the making?

Apart from that, I don't really mind one way or the other what we use in the Travis CI builds. I midly prefer it to be as minimal as possible, but if there is some value or preference from using it there, that seems fine :)

kostajh moved this task from Backlog to To Do on the MediaWiki-Docker board.Apr 13 2020, 1:51 PM
Krinkle removed a subscriber: Krinkle.Apr 17 2020, 12:14 AM
Jpita added a subscriber: Jpita.Aug 18 2020, 9:47 AM