Page MenuHomePhabricator

Migrate node-based services in production to node20
Open, Needs TriagePublic

Description

T349118: Migrate node-based services in production to node18 | T393434: Migrate node-based services in production to node22

General migration notes:

  • There is no nodejs20-devel image, as it is no longer needed; references to nodejs18-devel can be replaced with nodejs20-slim as part of the upgrade.

Imperfect search:

  • Content-Platform-Team
    • mediawiki/services/chromium-render
    • mediawiki/services/geoshapes never deployed
    • mediawiki/services/kartotherian
    • mediawiki/services/mobileapps
    • mediawiki/services/push-notifications
    • mediawiki/services/recommendation-api not owned by CTT and the service will be sunset in Q3
    • mediawiki/services/wikifeeds
  • Editing-team
    • mediawiki/services/citoid
    • mediawiki/services/zotero
  • MediaWiki-Engineering
    • mediawiki/services/example-node-api Not a deployable service
    • mediawiki/services/restbase

Related Objects

Event Timeline

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

Is there a reason why there’s no nodejs20-devel image in the docker registry yet? (We use both both -slim and -devel images in Termbox, so without a node20 version of -devel it’s not clear to me how to migrate T368523.) Is it expected to be added at some point, or should we maybe stick with node18 for development purposes?

(Disclaimer: I only have a vague idea of what these images do and where they come from, so it’s possible this question doesn’t make much sense ^^ but nodejs20-devel was also mentioned in the task description of T362681, at least.)

Or is nodejs20-devel not needed anymore because nodejs20-slim already includes npm?

Or is nodejs20-devel not needed anymore because nodejs20-slim already includes npm?

Indeed.

Thanks, added that to the task description :)

Change #1077005 had a related patch set uploaded (by Mvolz; author: Mvolz):

[mediawiki/services/zotero@master] Update Zotero to node 20

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

Change #1077005 merged by jenkins-bot:

[mediawiki/services/zotero@master] Update Zotero to node 20

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

Change #1082237 had a related patch set uploaded (by Mvolz; author: Mvolz):

[operations/deployment-charts@master] Update Zotero to node 20

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

Change #1082237 merged by jenkins-bot:

[operations/deployment-charts@master] Update Zotero to node 20

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

Change #1088264 had a related patch set uploaded (by Mvolz; author: Mvolz):

[mediawiki/services/citoid@master] Update to node 20

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

Change #1088264 merged by jenkins-bot:

[mediawiki/services/citoid@master] Update to node 20

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

tchin updated the task description. (Show Details)

mediawiki/services/example-node-api
isn't actually " in production " - it's just a template. I think maybe we can just mark the whole thing as deprecated and stop updating it? In practice no one has been using the template in years.

mediawiki/services/example-node-api
isn't actually " in production " - it's just a template. I think maybe we can just mark the whole thing as deprecated and stop updating it? In practice no one has been using the template in years.

Have created an archive task, then.

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

[operations/deployment-charts@master] mathoid: Upgrade image to 2026-05-12-175031 with Node 24

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

Change #1286448 merged by jenkins-bot:

[operations/deployment-charts@master] mathoid: Upgrade image to 2026-05-12-175031 with Node 24

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