Page MenuHomePhabricator

phpbench job for GrowthExperiments fails due to missing dependency
Open, Needs TriagePublic

Description

In rEGRE6ad99ddd7f98: Declare VisualEditor a hard dependency we made VisualEditor a hard dependency for GrowthExperiments. But the phpbench job for GrowthExperiments doesn't clone VisualEditor, which means the job fails as soon as we try to load GrowthExperiments.

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

I don't think so, because that is for phan, while this is for the new-ish (T291549) phpbench job. For phan jobs, we have a way to define dependencies, but no simple mechanism exists for phpbench. I guess we could say that phpbench jobs for extensions should set up the same dependencies defined in the phan dependency list?

I don't think so, because that is for phan, while this is for the new-ish (T291549) phpbench job.

Oh, right.

I guess we could say that phpbench jobs for extensions should set up the same dependencies defined in the phan dependency list?

I think by default phpbench only needs the dependencies specified in extension.json. Phan might need more because a construct like if ( $extensionRegistry->isLoaded(...) ) { OtherExtension::someMethod() } can be executed successfully without the other extension being installed, but phan would still error out. But then there is no harm in installing some extra extensions if that means less configuration.

By chance, I discovered that phpbench is not only executed in this job, but also in quibble-vendor-mysql-php83 and maybe others. And in those jobs it is a voting check, if phpbench fails then the entire job fails and thus the build. See https://integration.wikimedia.org/ci/job/quibble-vendor-mysql-php83/23178/console

With that in mind, this extra non-voting job seems redundant and we should just drop it.

Yeah, I don't think this ever took off as a useful developer tool, so I'd +1 removing it.

Change #1217231 had a related patch set uploaded (by Jforrester; author: Jforrester):

[integration/config@master] Zuul: [mediawiki/extensions/GrowthExperiments] Drop phpbench job, dupe

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

Change #1217232 had a related patch set uploaded (by Jforrester; author: Jforrester):

[integration/config@master] Zuul: Drop mediawiki-phpbench-patch template, now unused

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

Change #1217233 had a related patch set uploaded (by Jforrester; author: Jforrester):

[integration/config@master] jjb: Drop mediawiki-phpbench-patch, now unused

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

Yeah, I don't think this ever took off as a useful developer tool, so I'd +1 removing it.

WFM. Patches pushed; will deploy shortly.

Change #1217231 merged by jenkins-bot:

[integration/config@master] Zuul: [mediawiki/extensions/GrowthExperiments] Drop phpbench job, dupe

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

Change #1217232 merged by jenkins-bot:

[integration/config@master] Zuul: Drop mediawiki-phpbench-patch template, now unused

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

Change #1217233 merged by jenkins-bot:

[integration/config@master] jjb: Drop mediawiki-phpbench-patch, now unused

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

Mentioned in SAL (#wikimedia-releng) [2025-12-10T16:21:58Z] <James_F> Zuul: [mediawiki/extensions/GrowthExperiments] Drop phpbench job, dupe, for T329280