Page MenuHomePhabricator

MediaWiki on PHP 8.3 production workload migration
Closed, ResolvedPublic

Description

This will track the migration of production MediaWiki workloads to PHP 8.3, including both traffic-serving and batch workloads.


We will use a similar procedure as previously employed for the PHP 8.1 migration (T383845).

Preparation:

  • Switch all MediaWiki "next" and "migration" releases to PHP 8.3.
  • Enable PHP_ENGINE cookie-based routing at ATS.
  • Support selection of PHP 8.3 in mwscript-k8s.
  • Capacity right-sizing for multi-DC serving following the September 2025 DC switchover.
  • Introduce support for PHP_ENGINE cookie-based routing in rest-gateway -- See T405955#11262893.

Status:

Last update: 2025-11-12

Milestones:

  • 2025-11-03: Maintenance scripts launched with the mwscript-k8s command run on PHP 8.3 by default, with optional fallback to 8.1 via the --php_version flag (T405955#11337323).
  • 2025-11-03: 100% of eligible clients are enrolled in serving on PHP 8.3 for external web and API traffic (T405955#11337323).
  • 2025-11-04: 100% of internal API (mw-api-int) and jobrunner (mw-jobrunner) traffic is served on PHP 8.3 (T405955#11342091).
  • 2025-11-05: 100% of remaining (i.e., not rest-gateway routed) Parsoid endpoints (mw-parsoid) traffic is served on PHP 8.3 (T405955#11346217).
  • 2025-11-05: noc.wikimedia.org (mw-misc) is served on PHP 8.3 (T405955#11347417).
  • 2025-11-06: www.wikifunctions.org (mw-wikifunctions) is served on PHP 8.3 (T405955#11351097).
  • 2025-11-10: video transcoding jobs (mw-videoscaler) are running on PHP 8.3 (T405955#11360350).
  • 2025-11-10: periodic maintenance jobs (mw-cron) are running on PHP 8.3 (T405955#11360350).
  • 2025-11-12: 100% of residual external web and API traffic (i.e., not cookie-enrolled) is served on PHP 8.3 (T405955#11368240).

Rollback:

N/A

NOTE: As of 2025-11-25, rolling-back to PHP 8.1 is no longer possible, as MediaWiki 8.1 container images are no longer built. Any late-breaking compatibility issues discovered must be fixed-forward.

Schedule:

The migration will span 3-4 consecutive calendar weeks, using an accelerated version of the fairly conservative schedule used during the 8.1 migration.

What follows is the tentative schedule, and is subject to change in the event that issues are encountered (e.g., may be paused or reverted). In general, migration increments will follow a progressive exponential ramp over successive production-affecting days of the week (Monday though Thursday).

The following will be updated as the migration progresses.

Week 1 -- Larger traffic-serving workloads begin pilot. (Week of 20th of October)

  • mw-api-ext (cookie) : 0 -> 1%
  • mw-web (cookie) : 0 -> 1%

Week 2 -- Larger traffic-serving workloads continue, with cookie-based external- and capacity-based internal-traffic migrations staggered. (Week of 27th of October)

  • mw-api-ext (cookie) : 1 -> 50%
  • mw-api-int : 0 -> 25%
  • mw-jobrunner : 0 -> 25%
  • mw-web (cookie) : 1 -> 50%

Week 3 -- Larger traffic-serving workloads continue, completing with the exception of residual external traffic. Smaller traffic-serving workloads switch. Batch workloads start. (Week of 3rd of November)

  • mw-api-ext (cookie) : 50 -> 100%
  • mw-api-ext (residual) : 0 -> 25% (Note: This only starts after cookie-based traffic enrollment reaches 100%)
  • mw-api-int : 25 -> 100%
  • mw-jobrunner : 25 -> 100%
  • mw-misc : 100% (Flag-day)
  • mw-parsoid : 100% (Flag-day) (Note: mw-parsoid now receives insufficient traffic for an incremental migration to make sense)
  • mw-script : Default to 8.3 (Note: 8.1 remains available via --php_version)
  • mw-web (cookie) : 50 -> 100%
  • mw-web (residual) : 0 -> 25% (Note: This only starts after cookie-based traffic enrollment reaches 100%)
  • mw-wikifunctions : 100% (Flag-day)

Week 4 -- Larger traffic-serving workloads complete. Batch workloads complete. (Week of 10th of November)

  • mw-api-ext (residual) : 25 - 100%
  • mw-cron : Default to 8.3 (Note: 8.1 remains available for manual re-runs via mwscript-k8s, and possibly via helmfile override)
  • mw-web (residual) : 25 - 100%
  • mw-experimental : 100% (Note: We can push this earlier if there is sufficient interest)
  • mw-videoscaler : 100% (Flag-day)
  • mediawiki-dumps-legacy: 100% (Flag-day)

Cleanup:

  • Scale down migration releases.
  • Unwind PHP_ENGINE-based routing-to-next and scale down next releases.
  • Unwind PHP_ENGINE cookie enrollment.
  • Use 8.3 images in scap when running maintenance scripts.
  • Switch deployment hosts to PHP 8.3 (e.g., for non-scap local mwscript usage)
  • Remove support for 8.1 falback in mwscript-k8s.
  • Use 8.3 MediaWiki debug images in mw-debug's pinkunicorn release (shortly before the next item).
  • Stop building PHP 8.1 MediaWiki images (T405955#11406998).

Details

Related Changes in Gerrit:
SubjectRepoBranchLines +/-
operations/deployment-chartsmaster+1 -1
operations/puppetproduction+10 -10
operations/deployment-chartsmaster+84 -70
operations/puppetproduction+1 -2
operations/puppetproduction+1 -1
operations/puppetproduction+1 -2
operations/puppetproduction+0 -11
operations/puppetproduction+2 -3
operations/mediawiki-configmaster+0 -9
operations/mediawiki-configmaster+1 -1
operations/puppetproduction+1 -1
operations/deployment-chartsmaster+2 -4
operations/puppetproduction+1 -1
operations/deployment-chartsmaster+0 -5
operations/deployment-chartsmaster+2 -8
operations/puppetproduction+1 -1
operations/deployment-chartsmaster+4 -26
operations/puppetproduction+6 -10
operations/puppetproduction+2 -2
operations/deployment-chartsmaster+8 -8
operations/deployment-chartsmaster+24 -0
operations/deployment-chartsmaster+4 -4
operations/puppetproduction+1 -1
operations/puppetproduction+1 -1
operations/puppetproduction+2 -3
operations/deployment-chartsmaster+8 -4
operations/deployment-chartsmaster+3 -1
operations/deployment-chartsmaster+8 -8
operations/deployment-chartsmaster+4 -6
operations/puppetproduction+4 -6
operations/deployment-chartsmaster+5 -3
operations/puppetproduction+11 -1
operations/deployment-chartsmaster+4 -4
operations/mediawiki-configmaster+1 -1
operations/deployment-chartsmaster+2 -2
operations/deployment-chartsmaster+4 -4
operations/mediawiki-configmaster+1 -1
operations/deployment-chartsmaster+4 -4
operations/mediawiki-configmaster+1 -1
operations/deployment-chartsmaster+2 -2
operations/deployment-chartsmaster+4 -4
operations/mediawiki-configmaster+1 -1
operations/deployment-chartsmaster+6 -4
operations/mediawiki-configmaster+1 -1
operations/mediawiki-configmaster+1 -1
operations/puppetproduction+7 -7
operations/mediawiki-configmaster+1 -1
operations/puppetproduction+7 -7
operations/deployment-chartsmaster+6 -2
operations/mediawiki-configmaster+2 -2
operations/deployment-chartsmaster+4 -4
operations/deployment-chartsmaster+13 -0
operations/deployment-chartsmaster+55 -1
operations/puppetproduction+2 -2
operations/deployment-chartsmaster+20 -24
operations/deployment-chartsmaster+32 -21
operations/puppetproduction+14 -7
operations/puppetproduction+1 -0
operations/puppetproduction+3 -0
Show related patches Customize query in gerrit

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Change #1203285 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: migrate mw-(cron|videoscaler) to PHP 8.3

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

Change #1203284 merged by jenkins-bot:

[operations/deployment-charts@master] mw-(api-ext|web): serve 50% of residual traffic on PHP 8.3

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

Change #1203285 merged by Scott French:

[operations/puppet@production] deployment_server: migrate mw-(cron|videoscaler) to PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-10T18:29:47Z] <swfrench@deploy2002> Started scap sync-world: No-deployment scap run to switch mw-(cron|videoscaler) to PHP 8.3 - T405955

Updates for today:

  • As of ~ 18:05 - 18:20 UTC, we're now serving 50% of residual external web and API traffic on PHP 8.3.
  • As of ~ 18:35 UTC, mw-videoscaler jobs are now running entirely on PHP 8.3. No issues encountered so far following the switch - mediawiki error logs are clean, and Mercurious application logs and metrics show transcodes on the new jobs are succeeding.
  • As of ~ 18:45 UTC, mw-cron periodic maintenance jobs are now running entirely on PHP 8.3. No issues encountered so far in mediawiki error logs, and indeed there's no reason to believe these workloads are at particularly high risk of hitting 8.3 compatibility issues, but it will take some time for our confidence to grow (i.e., as new job executions are scheduled).

I'll keeping an eye out for potentially correlated cronjob failures throughout the rest of the day.

Change #1203559 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: fully migrate mw-(api-ext|web) to 8.3

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

Change #1203569 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] trafficserver: disable PHP_ENGINE next routing

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

Change #1203571 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/deployment-charts@master] mw-(api-ext|web): return capacity from migration to main

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

Change #1203572 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/deployment-charts@master] mw-(api-ext|web): return main to nominal multi-DC size

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

Change #1203573 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/deployment-charts@master] rest-gateway: Stop diverting PHP_ENGINE=8.3 to mw-api-ext-next

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

Change #1203574 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/deployment-charts@master] mw-(api-ext|web): return next to "idle" size

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

The next planned migration step will happen on Wednesday the 12th of November, when mw-api-ext and mw-web are fully migrated to PHP 8.3.

During the UTC-late infra window that day, we will:

Other pending patches attached to this task, focused on unwinding routing to the "next" releases, will be deferred to until the next day to avoid overrunning the infra window.

Change #1203578 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: migrate mediawiki-dumps-legacy to PHP 8.3

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

Change #1203559 merged by Scott French:

[operations/puppet@production] deployment_server: fully migrate mw-(api-ext|web) to 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-12T18:19:00Z] <swfrench@deploy2002> Started scap sync-world: Fully migrate mw-(api-ext|web) to 8.3 - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-12T18:22:27Z] <swfrench@deploy2002> Finished scap sync-world: Fully migrate mw-(api-ext|web) to 8.3 - T405955 (duration: 03m 51s)

Change #1203571 merged by jenkins-bot:

[operations/deployment-charts@master] mw-(api-ext|web): return capacity from migration to main

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

Mentioned in SAL (#wikimedia-operations) [2025-11-12T18:33:23Z] <swfrench@deploy2002> Locking from deployment [ALL REPOSITORIES]: Hold deployments during mw-(api-ext|web) capacity changes - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-12T18:56:43Z] <swfrench@deploy2002> Unlocked for deployment [ALL REPOSITORIES]: Hold deployments during mw-(api-ext|web) capacity changes - T405955 (duration: 23m 20s)

Between 18:40 and 19:00 UTC today, all remaining external API and web traffic served on mw-api-ext and mw-web, respectively, was migrated to PHP 8.3.

This leaves only (1) the pinkunicorn release of mw-debug, (2) mw-experimental, and (3) the mediawiki-dumps-legacy jobs in dse-k8s-eqiad. The latter two are free to migrate, while the first should be retained until we're ready to leave 8.1 fully behind (i.e., rollback becomes impossible).

As noted in T405955#11361655, the next step is to unwind routing to the "next" releases, while I'll aim to complete tomorrow.

Change #1203578 merged by Brouberol:

[operations/puppet@production] deployment_server: migrate mediawiki-dumps-legacy to PHP 8.3

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

Change #1203572 merged by jenkins-bot:

[operations/deployment-charts@master] mw-(api-ext|web): return main to nominal multi-DC size

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

Mentioned in SAL (#wikimedia-operations) [2025-11-13T17:41:18Z] <swfrench-wmf> scaled mw-api-ext/main to normal multi-DC size - T405955

Change #1203573 merged by jenkins-bot:

[operations/deployment-charts@master] rest-gateway: Stop diverting PHP_ENGINE=8.3 to mw-api-ext-next

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

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:02:42Z] <swfrench-wmf> stopped diverting PHP_ENGINE-enrolled traffic at rest-gateway - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:07:29Z] <swfrench-wmf> scaled mw-web/main to normal multi-DC size - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:11:41Z] <swfrench@deploy2002> Locking from deployment [ALL REPOSITORIES]: Hold deployments during mw-(api-ext|web) capacity changes - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:13:31Z] <swfrench-wmf> disable-puppet on A:cp hosts for ATS Lua config change - T405955

Change #1203569 merged by Scott French:

[operations/puppet@production] trafficserver: disable PHP_ENGINE next routing

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

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:22:26Z] <swfrench-wmf> rolling run-puppet-agent on A:cp hosts for ATS Lua config change - T405955

Change #1203574 merged by jenkins-bot:

[operations/deployment-charts@master] mw-(api-ext|web): return next to "idle" size

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

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:48:05Z] <swfrench-wmf> zero external traffic on mw-(api-ext|web) next releases - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:58:36Z] <swfrench@deploy2002> Unlocked for deployment [ALL REPOSITORIES]: Hold deployments during mw-(api-ext|web) capacity changes - T405955 (duration: 46m 54s)

Mentioned in SAL (#wikimedia-operations) [2025-11-13T18:59:32Z] <swfrench-wmf> scaled mw-(api-ext|web)/next to "idle" size - T405955

Change #1204945 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: migrate mw-experimental to PHP 8.3

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

Change #1204947 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/mediawiki-config@master] Disable enrollment in PHP 8.3

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

Change #1204948 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/mediawiki-config@master] De-configure cookie-based enrollment in PHP 8.3

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

Change #1204945 merged by Scott French:

[operations/puppet@production] deployment_server: migrate mw-experimental to PHP 8.3

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

Change #1204947 merged by jenkins-bot:

[operations/mediawiki-config@master] Disable enrollment in PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-17T18:32:01Z] <swfrench@deploy2002> Started scap sync-world: Backport for [[gerrit:1204947|Disable enrollment in PHP 8.3 (T405955)]]

Mentioned in SAL (#wikimedia-operations) [2025-11-17T18:36:35Z] <swfrench@deploy2002> swfrench: Backport for [[gerrit:1204947|Disable enrollment in PHP 8.3 (T405955)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-11-17T18:42:38Z] <swfrench@deploy2002> Finished scap sync-world: Backport for [[gerrit:1204947|Disable enrollment in PHP 8.3 (T405955)]] (duration: 10m 37s)

Mentioned in SAL (#wikimedia-operations) [2025-11-20T18:26:42Z] <swfrench@deploy2002> Started scap sync-world: No-deployment scap run after switching scap mwscript to PHP 8.3 - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-20T18:28:46Z] <swfrench@deploy2002> Started scap sync-world: Normal scap run after switching scap mwscript to PHP 8.3 - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-20T18:34:20Z] <swfrench@deploy2002> Finished scap sync-world: Normal scap run after switching scap mwscript to PHP 8.3 - T405955 (duration: 05m 34s)

Change #1204948 merged by jenkins-bot:

[operations/mediawiki-config@master] De-configure cookie-based enrollment in PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-20T19:47:36Z] <swfrench@deploy2002> Started scap sync-world: Backport for [[gerrit:1204948|De-configure cookie-based enrollment in PHP 8.3 (T405955)]]

Mentioned in SAL (#wikimedia-operations) [2025-11-20T19:52:12Z] <swfrench@deploy2002> swfrench: Backport for [[gerrit:1204948|De-configure cookie-based enrollment in PHP 8.3 (T405955)]] synced to the testservers (see https://wikitech.wikimedia.org/wiki/Mwdebug). Changes can now be verified there.

Mentioned in SAL (#wikimedia-operations) [2025-11-20T19:57:39Z] <swfrench@deploy2002> Finished scap sync-world: Backport for [[gerrit:1204948|De-configure cookie-based enrollment in PHP 8.3 (T405955)]] (duration: 10m 03s)

Change #1207979 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: drop PHP 8.1 fallback in mwscript-k8s

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

Change #1207980 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: switch mw-script/main to PHP 8.3

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

Change #1207981 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: follow main release in mwscript-k8s

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

Change #1208006 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: switch deployment hosts to PHP 8.3

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

Change #1208037 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/deployment-charts@master] mw-*: clean up 8.3 migration rollingUpdate and timeout tweaks

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

Change #1208039 had a related patch set uploaded (by Scott French; author: Scott French):

[operations/puppet@production] deployment_server: switch mw-debug/pinkunicorn to PHP 8.3

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

Change #1208006 merged by Scott French:

[operations/puppet@production] deployment_server: switch deployment hosts to PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-24T20:51:11Z] <swfrench-wmf> updated local PHP CLI installation on deploy1003 to 8.3 - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-24T20:56:01Z] <swfrench-wmf> updated local PHP CLI installation on deploy2002 to 8.3 - T405955

Both deployment hosts have now had their local PHP CLI installations migrated to 8.3:

swfrench@deploy2002:~$ php -v
PHP 8.3.26 (cli) (built: Oct 10 2025 17:09:46) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.26, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.26, Copyright (c), by Zend Technologies
swfrench@deploy2002:~$ mwscript Version.php --wiki=testwiki
MediaWiki version: 1.46.0-wmf.3 (built: 23:52, 20 November 2025)
swfrench@deploy2002:~$ mwscript shell.php --wiki=testwiki
Psy Shell v0.12.10 (PHP 8.3.26 — cli) by Justin Hileman
> phpversion();
= "8.3.26"

Change #1207979 merged by Scott French:

[operations/puppet@production] deployment_server: drop PHP 8.1 fallback in mwscript-k8s

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

Change #1207980 merged by Scott French:

[operations/puppet@production] deployment_server: switch mw-script/main to PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-25T18:04:36Z] <swfrench@deploy2002> Started scap sync-world: No-deployment scap run to switch mw-script/main to PHP 8.3 - T405955

Change #1207981 merged by Scott French:

[operations/puppet@production] deployment_server: follow main release in mwscript-k8s

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

Change #1208039 merged by Scott French:

[operations/puppet@production] deployment_server: switch mw-debug/pinkunicorn to PHP 8.3

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

Mentioned in SAL (#wikimedia-operations) [2025-11-25T18:27:45Z] <swfrench@deploy2002> Started scap sync-world: Switch mw-debug/pinkunicorn to PHP 8.3 - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-25T18:30:15Z] <swfrench@deploy2002> Finished scap sync-world: Switch mw-debug/pinkunicorn to PHP 8.3 - T405955 (duration: 02m 54s)

At this point, there are no active (or potential, as in the case of mwscript-k8s) consumers of the publish-81 image flavour, so we should be unblocked to stop building those images.

That involves merging https://gitlab.wikimedia.org/repos/releng/release/-/merge_requests/220 and running scap (need not even be a full run; i.e., scap sync-world --stop-before-sync is sufficient to pull the updated release repo and clear out the build report).

I'll likely move ahead with this shortly.

Mentioned in SAL (#wikimedia-operations) [2025-11-25T18:42:36Z] <swfrench@deploy2002> Started scap sync-world: Stop building PHP 8.1 images - T405955

Alright, https://gitlab.wikimedia.org/repos/releng/release/-/merge_requests/220 is live, and scap's build-and-push-container-images phase no longer builds 8.1 images.

Change #1208037 merged by jenkins-bot:

[operations/deployment-charts@master] mw-*: clean up 8.3 migration rollingUpdate and timeout tweaks

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

Mentioned in SAL (#wikimedia-operations) [2025-11-26T00:19:53Z] <swfrench@deploy2002> Started scap sync-world: Helmfile-only deployment to clean up migration overrides - T405955

Mentioned in SAL (#wikimedia-operations) [2025-11-26T00:22:17Z] <swfrench@deploy2002> Finished scap sync-world: Helmfile-only deployment to clean up migration overrides - T405955 (duration: 04m 10s)

Change #1196151 abandoned by Scott French:

[operations/puppet@production] deployment_server: Revert production mediawiki releases to 8.1 (demo)

Reason:

No longer supported, since 8.1 images are no longer built.

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

Note: There is one lingering unused reference to a very stale 8.1 image in helmfile.d/dse-k8s-services/mediawiki-dumps-legacy/values-dumps.yaml (it is overridden by the scap-managed values files).

We should remove this to avoid any potential confusion. I'll follow up on that when I return next week.

Following up on T405955#11408087, I stand corrected - it seems that the reference to mediawiki-multiversion-cli:2025-07-23-203525-publish-81 is used - i.e., it's used by the mediawiki-dumps-legacy "resources" helmfile release, which includes the "toolbox" deployment and does not inherit the scap-managed overrides.

Looking at the "toolbox" deployment definition, all that seems to do is run sleep infinity.

@brouberol @BTullis - What is this actually used for, and can it be updated to something more appropriate? My understanding is that the actual MediaWiki code and PHP environment used by dumps come from the "template" cronjob included in the "production" release (which indeed is updated by scap), but even if that's the case, this should still be pointed at something else in order to avoid confusion.

Summarizing discussion with @BTullis:

The "toolbox" deployment exists to support ad-hoc manual tasks (e.g., via kubectl exec) and is rarely used in practice - i.e., it does not support any part of the dumps infrastructure at steady-state.

Even setting aside the associated PHP version, relying on a months-old MediaWiki image in a context where maintenance scripts can potentially be used is risky, and needs to be addressed.

As a short-term fix, Ben will bump the image to the then-current (publish-83) MediaWiki CLI image used by dumps, with operators aware of the lingering risk noted above as that image ages. Ultimately, this will be superseded by phasing out dumps v1. If that does not happen soon, we'll need to consider other solutions, like wiring scap-managed values into the "toolbox" deployment or simply turning them down.

Change #1215576 had a related patch set uploaded (by Btullis; author: Btullis):

[operations/deployment-charts@master] Bump the mediawiki image used in the mediawiki-dumps-legacy-toolbox

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

Change #1215576 merged by jenkins-bot:

[operations/deployment-charts@master] Bump the mediawiki image used in the mediawiki-dumps-legacy-toolbox

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

Thank you for taking care of the mediawiki-dumps-legacy toolbox release, @BTullis.

That now covers everything I intend to explicitly track here. Separately, I'll work with @Krinkle to merge what we've done this time around into the migration checklist.

Many thanks to all who have contributed to supporting this aspect of the 8.3 upgrade!