Page MenuHomePhabricator

[EPIC] Migrate Mediawiki jobs from Nodepool to Docker
Closed, ResolvedPublic

Description

Jenkins jobs running PHPUnit for MediaWiki core,extensions,skins account for ~ 40% of the builds happening on Nodepool. We must migrate them to Docker.

Result from running quibble-vendor-mysql-php70-docker April 27th-29th which uses mediawiki/vendor, not composer install (that causes some to fail). The console logs will eventually be automatically discarded in a few days so I should probably save them somewhere.

Webdriver tests from mediawiki might fail due to a javascript alert box or extensions changing page content.

See also: QA report.

Skins

All the skins have been migrated

Extensions

Due to bad interaction with core wdio tests T196960

wdio daily tests

Done for what we needed. Was T188742

Gate T197469

Done for extension, core and vendor.

BlueSpice

No more needed. Tracking moved to T130811

Extension registry lacks config

T198331(WMF) CognateDone
T198330(WMF) GlobalPreferencesDone
T196567ReadingListsDone
T196173GoogleLoginDone
ReasonExtensionConsole
T203084DonationInterface
grunt-contrib-qunit requires PhantomJS T180171(WMF) ArticlePlaceholderhttps://integration.wikimedia.org/ci/job/quibble-vendor-mysql-php70-docker/660/consoleFull

Broken ones:

ReasonExtensionConsole
T198919 requires npm install, Non votingLinkedWikidone marked as broken
T196504 Non votingSiteSettingsdone marked as broken
T198089 Non votingWikiLexicalDatadone marked as broken

Irremediably broken

Semantic MediaWiki is on GitHub and to be installed via composer. That installs a few other extensions in the process. Unfortunately they fail to pass our usual linters and the MediaWiki core test suite. So there is really nothing Wikimedia CI can do to support them. A few other extensions are broken or using die() with no fallback ...

ReasonExtension
Non voting T159058 T193808ArticleFeedbackv5
SemanticMediawiki / SemanticFormsHierarchyBuilder
T196444 Non votingHtml2Wiki
T117659MathSearch
T196529RevisionCommentSupplement
SemanticMediawikiSemanticACL
SemanticMediawikiSemanticDependency
SemanticMediawikiSemanticImageAnnotator
SemanticMediawikiSemanticImageInput
SemanticMediawikiSemanticInternalObjects
SemanticMediawikiSemanticPageSeries
SemanticMediawikiSemanticTasks

Broken due to AuthManager T110291

Details

Related Gerrit Patches:
mediawiki/extensions/ArticlePlaceholder : masterRemove grunt-contrib-qunit test runner
integration/config : masterPhase out mwext-testextension*
integration/config : masterRemove mwext-qunit-composer-jessie
integration/config : masterMigrate ArticlePlaceholder to Quibble
integration/config : masterMigrate ReadingLists to Quibble
integration/config : masterMigrate Math to Quibble
integration/config : masterMigrate TrustedXFF to Quibble
integration/config : masterClean up non-voting MediaWiki jobs
integration/config : masterRemove non voting PHPUnit tests
integration/config : masterMigrate ORES to Quibble
integration/config : masterArchive MOOC extension
integration/config : masterrm wikimedia-fundraising-civicrm-jessie
integration/config : masterMigrate Lingo to Quibble
integration/config : masterLinkedWiki extension is broken
integration/config : masterSiteSettings extension is broken
integration/config : masterWikiLexicalData is broken
integration/config : masterRemove unused mediawiki-phpunit-* jobs
integration/config : masterName dependent mediawiki queue based on a Quibble job
integration/config : masterMigrate ProofreadPage to Quibble
integration/config : masterMigrate Cognate to Quibble
integration/config : masterMigrate GlobalPreferences to Quibble
integration/config : masterMigrate intersection extension to Quibble
integration/config : masterMigrate Refreshed skin to Quibble
integration/config : masterRevisionCommentSupplement is broken
integration/config : masterArticleFeedbackv5 is broken
integration/config : masterDisable test on broken extensions
integration/config : masterMigrate TitleIcon to Quibble
integration/config : masterMigrate VikiSemanticTitle and VikiTitleIcon to Quibble
integration/config : masterMigrate SemanticDrilldown to Quibble
integration/config : masterMigrate RevisionSlider to Quibble
integration/config : masterMigrate Splash, Tempo, Truglass to Quibble
integration/config : masterMigrate Daddio skin to Quibble
integration/config : masterMigrate SphinxSearch to Quibble
integration/config : masterMigrate PluggableAuth to Quibble without Selenium
integration/config : masterMigrate SimpleSAMLphp to Quibble without Selenium
integration/config : masterMigrate OpenID to Quibble
integration/config : masterMigrate MediaWikiAuth to Quibble without Selenium
integration/config : masterMigrate OpenIDConnect to Quibble without Selenium
integration/config : masterMigrate reCaptcha to Quibble without Selenium
integration/config : masterMigrate GoogleAppEngine to Quibble without Selenium
integration/config : masterMigrate PageDisqus to Quibble without Selenium
integration/config : masterMigrate LifeWeb to Quibble
integration/config : masterMigrate MediaWikiFarm to Quibble with composer
integration/config : masterMigrate BreadCrumbs extension to Quibble
integration/config : masterMigrate PageViewInfo to Quibble
integration/config : masterMigrate Graph to Quibble
integration/config : masterMigrate Campaigns to Quibble
integration/config : masterMigrate PCRGUIInserts to Quibble
integration/config : masterMigrate Popups to Quibble
integration/config : masterMigrate PropertySuggester to Quibble
integration/config : masterMigrate Wikidata.org extension to Quibble
integration/config : masterMigrate WikidataPageBanner to Quibble
integration/config : masterMigrate WikibaseQualityExternalValidation to Quibble
integration/config : masterMigrate WikibaseQualityConstraints to Quibble
integration/config : masterMigrate WikibaseQuality to Quibble
integration/config : masterSwitch BlueSpiceFoundation to Quibble
integration/config : masterMigrate two extensions to Quibble
integration/config : masterMigrate AkismetKlik to Quibble
integration/config : masterMigrate to Quibble extensions blocked by AntiSpoof
integration/config : masterMigrate Wikisource to Quibble
integration/config : masterMigrate Mpdf to Quibble
integration/config : masterMigrate GoogleLogin to Quibble
integration/config : masterMigrate Sentry to Quibble
integration/config : masterMigrate ShortUrl to Quibble
integration/config : masterMigrate TranslateSvg to Quibble
integration/config : masterMigrate Theme to Quibble
integration/config : masterMigrate SpellingDictionary to Quibble
integration/config : masterMigrate Reflect to Quibble
integration/config : masterMigrate SocialLogin to Quibble
integration/config : masterMigrate MsCatSelect to Quibble
integration/config : masterMigrate LiveTranslate to Quibble
integration/config : masterMigrate LastModified to Quibble
integration/config : masterMigrate LanguageSelector to Quibble
integration/config : masterMigrate EditNotify to Quibble
integration/config : masterMigrate 4 extensions to Quibble
integration/config : masterMigrate GoogleGeocode to Quibble
integration/config : masterQA report for the Quibble migration
integration/config : masterMigrate 4 extensions to Quibble with composer
integration/config : masterMigrate ParserFun to Quibble with composer
integration/config : masterMigrate BlueSpiceSkin to Quibble
integration/config : masterMigrate ext needing git submodule to Quibble
integration/config : masterMigrate CloseWikis to Quibble
integration/config : masterMigrate Linter / MultiLanguageManager to Quibble
integration/config : masterMigrate GraphViz to Quibble
integration/config : masterMigrate GlobalUsage to Quibble
integration/config : masterMigrate 3D to Quibble
integration/config : masterMigrate MultimediaViewer to Quibble
integration/config : masterMigrate FlaggedRevs to Quibble
integration/config : masterMigrate MinervaNeue to Quibble
integration/config : masterMigrate ActiveAbstract to Quibble
integration/config : masterMigrate Widgets to Quibble
integration/config : masterMigrate rest of passing extensions to Quibble
integration/config : masterMigrate extensions to Quibble
integration/config : masterMigrate extensions to Quibble
integration/config : masterMigrate four extensions to Quibble
integration/config : master[CollapsibleVector] migrate to Quibble
mediawiki/extensions/CollapsibleVector : masterbuild: jscs should ignore vendor/
integration/config : masterMigrate batch of extensions to Quibble
integration/config : masterMigrate some extensions to Quibble
integration/config : masterMove OAuthAuthentication and WebChat to Quibble
integration/config : masterMigrate mediawiki/extensions/S* T* U* to Quibble
integration/config : masterMigrate mediawiki/extensions/R* to Quibble
integration/config : masterMigrate mediawiki/extensions/P* Q* to Quibble
integration/config : masterMigrate mediawiki/extensions/N* O* to Quibble
integration/config : masterMigrate mediawiki/extensions/M* to Quibble
integration/config : masterMigrate mediawiki/extensions/I* J* L* to Quibble
integration/config : masterMigrate mediawiki/extensions G* H* to Quibble
integration/config : masterMigrate mediawiki/extensions/E* & F* to Quibble
integration/config : masterMigrate mediawiki/extensions/D* to Quibble
integration/config : masterMigrate mediawiki/extensions/C* to Quibble
integration/config : masterMigrate mediawiki/extensions/B* to Quibble
integration/config : masterMigrate mediawiki/extensions/A* to Quibble
integration/config : masterMigrate most mediawiki skins to Quibble

Related Objects

StatusAssignedTask
OpenNone
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedhashar
ResolvedMaxSem
ResolvedCommunityTechBot
DuplicateNone
Resolvedhashar
ResolvedLegoktm
Resolvedhashar
Resolvedhashar
ResolvedEjegg
Resolvedhashar
DeclinedJayprakash12345
Resolvedhashar
Resolvedhashar
ResolvedAnomie
ResolvedOsnard
ResolvedMarcoAurelio
ResolvedMarcoAurelio
Resolvedhashar
ResolvedMarcoAurelio
ResolvedMarcoAurelio
OpenNone
OpenNone
Resolvedhashar
Resolvedhashar
ResolvedPastakhov
Resolvedhashar
Resolvedhashar
Resolvedthiemowmde
Resolvedhashar
Resolvedhashar
Resolvedhashar
ResolvedLucas_Werkmeister_WMDE
Resolvedhashar
Resolvedhashar
ResolvedLegoktm
Resolvedhashar
Resolvedhashar
Resolvedhashar
ResolvedKarima
DeclinedNone
Resolvedhashar
Resolvedhashar
Resolvedhashar
Resolvedhashar
ResolvedAddshore
ResolvedAddshore
ResolvedAddshore
ResolvedAddshore
ResolvedAddshore
ResolvedAddshore
Resolvedhashar
Resolvedhashar
Resolvedhashar

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
hashar updated the task description. (Show Details)Jul 20 2018, 4:07 PM

Change 447216 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate GlobalPreferences to Quibble

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

hashar updated the task description. (Show Details)Jul 21 2018, 9:16 PM

Change 447216 merged by jenkins-bot:
[integration/config@master] Migrate GlobalPreferences to Quibble

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

Change 448368 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate Cognate to Quibble

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

Change 448368 merged by jenkins-bot:
[integration/config@master] Migrate Cognate to Quibble

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

Change 449617 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate ProofreadPage to Quibble

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

hashar updated the task description. (Show Details)Jul 31 2018, 9:57 PM

Change 449617 merged by jenkins-bot:
[integration/config@master] Migrate ProofreadPage to Quibble

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

hashar updated the task description. (Show Details)Aug 20 2018, 9:53 AM

Change 454087 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Name dependent mediawiki queue based on a Quibble job

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

Change 454087 merged by jenkins-bot:
[integration/config@master] Name dependent mediawiki queue based on a Quibble job

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

Change 454154 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Remove unused mediawiki-phpunit-* jobs

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

Change 454154 merged by jenkins-bot:
[integration/config@master] Remove unused mediawiki-phpunit-* jobs

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

Just an update to the status 1 year on:

Change 454296 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] WikiLexicalData is broken

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

hashar updated the task description. (Show Details)Aug 21 2018, 2:57 PM

Change 454296 merged by jenkins-bot:
[integration/config@master] WikiLexicalData is broken

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

Change 454298 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] SiteSettings extension is broken

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

hashar updated the task description. (Show Details)Aug 21 2018, 2:59 PM

Change 454298 merged by jenkins-bot:
[integration/config@master] SiteSettings extension is broken

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

hashar updated the task description. (Show Details)Aug 21 2018, 3:04 PM

Change 454300 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] LinkedWiki extension is broken

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

hashar updated the task description. (Show Details)Aug 21 2018, 3:08 PM

Change 454300 merged by jenkins-bot:
[integration/config@master] LinkedWiki extension is broken

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

Change 454307 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate Lingo to Quibble

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

hashar updated the task description. (Show Details)Aug 21 2018, 3:34 PM

Change 454307 merged by jenkins-bot:
[integration/config@master] Migrate Lingo to Quibble

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

Change 454768 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] rm wikimedia-fundraising-civicrm-jessie

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

Change 454768 merged by jenkins-bot:
[integration/config@master] rm wikimedia-fundraising-civicrm-jessie

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

Change 454856 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate MOOC to Quibble

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

hashar updated the task description. (Show Details)Aug 23 2018, 4:37 PM
hashar updated the task description. (Show Details)Aug 24 2018, 10:32 AM
hashar updated the task description. (Show Details)

Change 454856 merged by jenkins-bot:
[integration/config@master] Archive MOOC extension

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

Change 455141 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate ORES to Quibble

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

hashar updated the task description. (Show Details)Aug 24 2018, 11:30 AM

Change 455141 merged by jenkins-bot:
[integration/config@master] Migrate ORES to Quibble

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

hashar updated the task description. (Show Details)Aug 24 2018, 11:36 AM

Change 455147 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Remove non voting PHPUnit tests

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

Change 455150 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Clean up non-voting MediaWiki jobs

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

Change 455147 merged by jenkins-bot:
[integration/config@master] Remove non voting PHPUnit tests

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

Change 455150 merged by jenkins-bot:
[integration/config@master] Clean up non-voting MediaWiki jobs

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

hashar updated the task description. (Show Details)Aug 29 2018, 4:11 PM

Change 456276 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate TrustedXFF to Quibble

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

hashar updated the task description. (Show Details)Aug 29 2018, 8:29 PM

Change 456276 merged by jenkins-bot:
[integration/config@master] Migrate TrustedXFF to Quibble

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

hashar updated the task description. (Show Details)Aug 29 2018, 8:37 PM

Change 457855 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate ReadingLists to Quibble

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

Change 457855 merged by jenkins-bot:
[integration/config@master] Migrate ReadingLists to Quibble

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

hashar updated the task description. (Show Details)Sep 4 2018, 10:20 AM

Change 462897 had a related patch set uploaded (by Hashar; owner: Hashar):
[mediawiki/extensions/ArticlePlaceholder@master] Remove grunt-contrib-qunit test runner

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

Change 462898 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Migrate ArticlePlaceholder to Quibble

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

Change 462901 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Remove mwext-qunit-composer-jessie

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

Change 462902 had a related patch set uploaded (by Hashar; owner: Hashar):
[integration/config@master] Phase out mwext-testextension*

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

Change 462898 merged by jenkins-bot:
[integration/config@master] Migrate ArticlePlaceholder to Quibble

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

Change 462901 merged by jenkins-bot:
[integration/config@master] Remove mwext-qunit-composer-jessie

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

Change 462902 merged by jenkins-bot:
[integration/config@master] Phase out mwext-testextension*

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

Change 462897 merged by jenkins-bot:
[mediawiki/extensions/ArticlePlaceholder@master] Remove grunt-contrib-qunit test runner

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

hashar closed this task as Resolved.Nov 15 2018, 7:24 PM

The jobs to test Wikibase client and repo have been migrated. They were the last ones still relying on Nodepool.