Page MenuHomePhabricator

mwcli: Add fresh-node v16, while also keeping node v14
Closed, ResolvedPublic

Description

fresh-node has now Node v16 as a default (T314347) and many Wikimedia CI jobs now run with Node v16 as well (T314470).
However, one important consideration does not yet work with Node v16: legacy selenium browser tests, of which there are a lot (T256626).

So it would be great if both v14 and v16 would be available from mwcli, so one can choose based on what is needed for the given task.

Note that with a locally installed fresh, I do have the option to either run fresh-node and get Node v16, or run fresh-node14 and get Node v14. So maybe this is not much work? 🤞

Details

ReferenceSource BranchDest BranchAuthorTitle
repos/releng/cli!379fresh-node-16mainaddshoreUse node16 for fresh
Customize query in GitLab

Event Timeline

I don't know the intervals of mwcli. Fresh is distributed as a set of standalone bash scripts. If it uses those and/or if it runs the underlying docker commands directly, then that should be fairly straight forward indeed.

Untagged, but subbed for any questions.

Ah, I'm sorry for also tagging the Performance-Team, that was unintentional.

So it would be great if both v14 and v16 would be available from mwcli, so one can choose based on what is needed for the given task.

As with all other services, it's possible to overide the env var and use whatever image you want to for a service.
So in that respect, you can already use 16 and 14 ;)

But let's bump the default to 16 if tis the default in other places!

Addshore moved this task from Inbox to Review on the mwcli board.

I have a desire (not written in a ticket yet) that you'd be able to do something like mw dev mediawiki fresh --version 14 <command> and mwcli would know what to do.
We are not far away from something like that.

The ability to change the images used by services is now simplified in a command, such as mw dev mediawiki image set <image-name>, which would then be used if you recreate the containers.
But It would be nice to also have "magic aliases", so you could do mw dev mediawiki image set-version 7.4 or something similar, which would choose the correct php 7.4 image.

This doesn't quite work with the way the fresh command is laid out currently, as it can't easily have sub-commands.
So perhaps mw dev mediawiki fresh <command> should actually move to mw dev mediawiki fresh exec <command>
Or perhaps that extra level of command is too much?