Page MenuHomePhabricator

Migrate Proton to nodejs 10
Open, NormalPublic

Description

Per T210704: Migrate node-based services in production to node10.

  • Test proton source code against node 10
  • Implement pipeline
  • Profile Proton in deployment-charts
  • Deploy Proton in k8s

Details

Related Gerrit Patches:
mediawiki/services/chromium-render : masterblubber: bump version to v4
integration/config : masterlayout: [mediawiki/services/chromium-render] Enable pipeline testing and publishing
operations/puppet : productionPass use_nodejs10 to proton

Event Timeline

Tgr created this task.Feb 26 2019, 4:17 AM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptFeb 26 2019, 4:17 AM
Tgr added a comment.Feb 26 2019, 4:22 AM

https://gerrit.wikimedia.org/r/c/mediawiki/services/chromium-render/+/489102 adds URL handling with the legacy URL API (the WHATWG one is not available on nodejs 6.11.0, although it is available on later versions of node 6). Would be nice to fix when the migration happens.

Jhernandez triaged this task as High priority.Feb 27 2019, 4:37 PM

@MoritzMuehlenhoff on what time scale do you expect this to happen?

See https://phabricator.wikimedia.org/T210704, ideally this would happen in the next quarter.

@Tgr Would you mind memorializing the tricky bits about this in the description, for the benefit of whoever picks it up?

Change 524353 had a related patch set uploaded (by MSantos; owner: MSantos):
[operations/puppet@production] Pass use_nodejs10 to proton

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

Change 524353 merged by Alexandros Kosiaris:
[operations/puppet@production] Pass use_nodejs10 to proton

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

MSantos claimed this task.Jul 31 2019, 8:35 PM
MSantos added a subscriber: Jdforrester-WMF.

So, I think our part is done:

  1. .pipeline is created
  2. Proton is tested against nodejs 10 and has a beta environment set for it. Proton is ready for a nodejs 10 environment.

@MoritzMuehlenhoff and @Jdforrester-WMF what are the next steps? Does that conclude this task?

So, I think our part is done:

  1. .pipeline is created
  2. Proton is tested against nodejs 10 and has a beta environment set for it. Proton is ready for a nodejs 10 environment.

@MoritzMuehlenhoff and @Jdforrester-WMF what are the next steps? Does that conclude this task?

CI is running node 6; there's no testing for node 10 set up (and every time you V+2 you bypass all the testing anyway). Next step is to add the pipeline build step in CI, which I'll do now.

Change 528226 had a related patch set uploaded (by Jforrester; owner: Jforrester):
[integration/config@master] layout: [mediawiki/services/chromium-render] Enable pipeline testing and publishing

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

Change 528226 merged by jenkins-bot:
[integration/config@master] layout: [mediawiki/services/chromium-render] Enable pipeline testing and publishing

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

Mentioned in SAL (#wikimedia-releng) [2019-08-05T19:22:27Z] <James_F> Zuul: [mediawiki/services/chromium-render] Enable pipeline testing and publishing T217114

OK, it's now running the pipeline step for CI, but unfortunately that's failing as your pipeline file still tries to use v3 of blubber which is no longer supported; you need to bump to v4.

Change 528232 had a related patch set uploaded (by MSantos; owner: MSantos):
[mediawiki/services/chromium-render@master] blubber: bump version to v4

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

Change 528232 abandoned by MSantos:
blubber: bump version to v4

Reason:
duplicate of If0f9c4d7f2732358b8ee01ed0c6a7e55f5be15fb

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

Mholloway closed this task as Resolved.Sep 30 2019, 3:55 PM

But nodejs on the proton* hosts is still on nodejs 6?

Mholloway reopened this task as Open.Sep 30 2019, 4:02 PM
MSantos lowered the priority of this task from High to Normal.Oct 7 2019, 2:50 PM
MSantos updated the task description. (Show Details)