Page MenuHomePhabricator

CI: Minerva PHPUnit tests should be included in shared extension gate job
Closed, ResolvedPublic

Description

A change for T140804 was merged that caused an unbreak now (T202021)

While the UBN was picked up inside the Minerva repo, it did not surface in the gerrit match in core, presumably because Minerva is not run in the shared extension gate job

Given the importance of mobile and thus the Minerva skin, we should add this to avoid future UBN.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptAug 15 2018, 9:47 PM
Jdlrobson triaged this task as High priority.Apr 24 2019, 1:41 AM

Can this be reprioritised or can I have some pointers on how to fix this so I can write a patch?

Reedy added a subscriber: Reedy.Apr 24 2019, 1:49 AM

Can this be reprioritised or can I have some pointers on how to fix this so I can write a patch?

Plenty of example commits if you look in the integration-config repo ;)

https://github.com/wikimedia/integration-config/commit/c87d0ca4905064a363e0bb87dfae685d023977ee

@Reedy but that's for extensions. How would this work for a skin? I assumed "gatedextensions" doesn't apply to skins?

Reedy added a comment.Apr 24 2019, 2:04 AM

I'd have hoped if an extension depends on a skin (such as MF on Minerva and vice versa)... Having MF gated (which it is) should bring in Minerva?

Nope, that's not the case. MobileFrontend doesn't depend on Minerva, Minerva depends on MobileFrontend (for now).

Minerva will throw an exception if MobileFrontend is not installed. MobileFrontend can be installed without Minerva. How this is setup in CI and what it equates to in the config i'm not sure. If CI is disagreeing, it's also probably lying ;-)

What I do see is that on changes within the core repository, Minerva's QUnit, browser tests and PHPUnit tests do not seem to be executed. MobileFrontend's do.

hashar added a subscriber: hashar.Apr 25 2019, 1:33 PM

Hi, I actually looked at adding Minerva but eventually there is not much support to add a skin to The Gate :-/ Vector is in it but then it is hardcoded in the list of repositories.

One issue is the Zuul parameter function gets the list of extension from a dict (gated_dependencies) then prefix each with mediawiki/extensions/ and inject the result to the env variable EXT_DEPENDENCIES. So we would need to add support for skins as well. It is probably not that complicated but I am attending offsite meetings all week long ..

Change 506889 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Add MinvervaNeue and Vector to gate

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

hashar claimed this task.Apr 27 2019, 10:54 PM

Change 506889 merged by jenkins-bot:
[integration/config@master] Add MinvervaNeue and Vector to gate

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

hashar closed this task as Resolved.May 2 2019, 1:38 PM

Should be good now!