Page MenuHomePhabricator

Set up CI for the 3D extension
Closed, ResolvedPublic

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 28 2017, 4:28 PM

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

https://gerrit.wikimedia.org/r/340436

Change 340436 merged by jenkins-bot:
[3D] Add CI

https://gerrit.wikimedia.org/r/340436

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

https://gerrit.wikimedia.org/r/340499

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

https://gerrit.wikimedia.org/r/340499

It is almost done :} I took the liberty to hijack the patch that fix PHP CodeSniffer https://gerrit.wikimedia.org/r/#/c/340342/ .

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 https://gerrit.wikimedia.org/r/340499 3D depends on MultimediaViewer )
b) update extension.json to mention the dependency:

"requires": {
  "extensions": {
    "MultimediaViewer": "*"
  }
}
Gilles added a comment.Mar 1 2017, 2:00 PM

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 closed this task as Resolved.Mar 1 2017, 11:59 PM
Jdforrester-WMF claimed this task.

All fixed, thanks!