Page MenuHomePhabricator

Set up CI for the 3D extension
Closed, ResolvedPublic

Event Timeline

Change 340436 had a related patch set uploaded (by Jforrester):
[integration/config] [3D] Add CI

Change 340499 had a related patch set uploaded (by Hashar):
[integration/config] 3D depends on MultimediaViewer

Change 340499 merged by jenkins-bot:
3D depends on MultimediaViewer

It is almost done :} I took the liberty to hijack the patch that fix PHP CodeSniffer .

There are a few issues left to figure out:

The repository has a composer.lock installed. We typically do not commit it in favor of using explicit versions in composer.json which is usually good enough. In the current situation, bumping code sniffer also requires to commit the composer.lock.

The MediaWiki structure test fails with:

  1. ResourceLoaderFileModule::readStyleFile: style file not found: 3D/modules/ext.3d.css

There is a modules/ext.3d.less file though but I don't know whether resource loader is smart enough to auto compile it :} Probably an easy fix.

  1. ResourcesTest::testMissingDependencies The module 'mmv' required by 'mmv.3d' must exist

Seems 3D requires the MultimediaViewer extension. So we need to:

a) inject the dependency in Zuul config (done with 3D depends on MultimediaViewer )
b) update extension.json to mention the dependency:

"requires": {
  "extensions": {
    "MultimediaViewer": "*"

Speaking of what state it was when I left it, the dependency on MediaViewer is a soft one. If it's present, the 3D extension hooks into it. Otherwise it still works without MediaViewer and provides thumbnails. It's worth having it for CI, for sure, to test that integration. But I'm not sure that making it a hard dependency of the extension itself is a good idea.

Jdforrester-WMF claimed this task.

All fixed, thanks!