Page MenuHomePhabricator

Document adding a new extension to PatchDemo
Closed, ResolvedPublic2 Estimated Story Points

Description

When folks want to add a new extension, some folks are already confident doing it, but we should document for folks new to PatchDemo.

AC:

  • On-wiki docs (or a pointer on-wiki to docs in the repo) for step-by-step adding an MediaWiki extension to PatchDemo
  • Should cover where to put your:
    • extension repo
    • extension settings
    • data dumps (if applicable)

Details

Related Changes in GitLab:
TitleReferenceAuthorSource BranchDest Branch
Add documentation for adding new extensionsrepos/test-platform/catalyst/patchdemo!190kindrobotT400921-new-ext-docsmain
Customize query in GitLab

Event Timeline

thcipriani triaged this task as Medium priority.
thcipriani set the point value for this task to 2.
thcipriani moved this task from Backlog to Ready on the Catalyst (akesi npa) board.

Rough steps:

In ci-charts:

  1. add to mediawiki/files/composer/composer.local.json if extension has composer deps
  2. create mediawiki/files/localSettings/extension-YOUR_EXTENSION.php with the local settings you'll need
  3. add mediawiki/files/pages/extensions-YOUR_EXTENSION.txt and mediawiki/files/pages/extensions-YOUR_EXTENSION.xml if you have seed data/pages

In patchdemo:

  1. add repo to repository-lists/composerinstall.yaml
  2. add repo to repository-lists/all.txt
  3. add repo to repository-lists/wikimedia.yaml if it is deployed on production wikis
  4. add pages/extensions-YOUR_EXTENSION.txt , pages/extensions-YOUR_EXTENSION.xml, localsettings/extensions-YOUR_EXTENSION.php for legacy backend support

In catalyst-api
nothing

in wiki-repos-pool
nothing

  1. add repo to repository-lists/wikimedia.yaml if it is deployed on production wikis

It might be worth noting that this step may be more applicable if the extension is enabled on a large number/large proportion of production wikis, rather than (e.g.) just one or two.

(I can't think of many citations for this off the top of my head, but a recent semi-related example was ext:Wikibase — which was originally included within the Wikimedia preset when it was added to Patch demo, but was later removed from the preset due to causing problems for some non-Wikibase developers due to having different search-bar behaviours. xref T372960: Add Wikibase Repository and Client extensions, T393806: Wikibase breaks desktop search on default patchdemo installs)

I can't think of many citations for this off the top of my head

Actually, there are quite a few. I tried to collect them, but may have missed some:

  • Used on only one or two wikis (plus maybe some test wikis: testwiki, test2wiki and/or testcommonswiki):
    • MediaSearch (Commons, ptwikinews)
    • PageTriage (enwiki)
    • WikimediaIncubator (Incubator)
  • Used on more than just a few, but still on a limited number of wikis:
    • FlaggedRevs
    • Flow
    • LiquidThreads
    • ProofreadPage
    • SandboxLink
    • Translate

Some of these like Flow or FlaggedRevs are risky, but others like SandboxLink or MediaSearch probably wouldn’t cause many issues; still, none of them are included in the Wikimedia preset.

Thank you for finding the citations for me @Tacsipacsi :D