Page MenuHomePhabricator

Create Debian packages for Node.js 10 upgrade
Closed, ResolvedPublic

Description

Initially to be used by the Zotero replacement (which doesn't work with node 6). Later on other node-based apps can migrate.

This is complex to build/package and node 10 packages will only be provided for stretch-wikimedia.

Related Objects

StatusSubtypeAssignedTask
StalledNone
ResolvedNone
Resolvedakosiaris
ResolvedJdforrester-WMF
ResolvedJdforrester-WMF
ResolvedReedy
ResolvedReedy
ResolvedBawolff
ResolvedAnomie
ResolvedBawolff
ResolvedBawolff
ResolvedLegoktm
ResolvedLucas_Werkmeister_WMDE
ResolvedBawolff
Resolvedsbassett
Resolvedsbassett
ResolvedJdforrester-WMF
Resolvedsbassett
Resolvedsbassett
ResolvedReedy
ResolvedReedy
ResolvedJdforrester-WMF
ResolvedReedy
ResolvedReedy
ResolvedReedy
ResolvedJdforrester-WMF
ResolvedJdforrester-WMF
ResolvedReedy
ResolvedReedy
ResolvedReedy
ResolvedJdforrester-WMF
Resolvedhashar
Resolvedhashar
ResolvedJdforrester-WMF
Resolvedhashar
DeclinedMoritzMuehlenhoff
Invalidthcipriani
Resolved mmodell
Resolvedhashar
ResolvedJoe
ResolvedJMeybohm
ResolvedJMeybohm
DuplicateDzahn
DeclinedDzahn
ResolvedJdforrester-WMF
ResolvedMoritzMuehlenhoff

Event Timeline

MoritzMuehlenhoff triaged this task as Medium priority.

One notable change which is to be expected from moving to 10:
Some node modules ship binary blobs in their modules and the official node packages are build against OpenSSL 1.0.2. nodejs 10 only supports OpenSSL 1.1 (which has a different ABI/API) and then those modules fail to load or throw runtime errors
Upstream discussion is at https://github.com/nodejs/node/issues/21897, but there's no real solution

All node binary packages will need to be built for our environment and not fetched from npm (which is the clean approach anyway), so packages moved to node 10 will need to be reviewed if any of the deps is affected by this.

Pchelolo subscribed.

All node binary packages will need to be built for our environment and not fetched from npm (which is the clean approach anyway)

For most of node services we actually build binary dependencies ourselves already with a docker build script, so this shouldn't be an issue. We even switch off node-pre-gyp in some cases to explicitly avoid fetching pre-built binaries.

This is complex to build/package and node 10 packages will only be provided for stretch-wikimedia.

Will nodejs 10 packages be in a separate component for stretch-wikimedia, or will they replace the nodejs 6 packages currently in stretch-wikimedia's main?

nodejs 10 packages will be in a separate repository component, allowing applications to gradually move over. We'll continue to support nodejs 6 with security updates until all applications are migrated to 10.

Krinkle renamed this task from Create nodejs 10 packages to Create Debian packages for Node.js 10 upgrade.Sep 9 2018, 10:55 PM
Krinkle awarded a token.

Change 460787 had a related patch set uploaded (by Muehlenhoff; owner: Muehlenhoff):
[operations/puppet@production] Add component/node10 for stretch-wikimedia

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

Change 460787 merged by Muehlenhoff:
[operations/puppet@production] Add component/node10 for stretch-wikimedia

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

nodejs 10 packages for stretch-wikimedia are now available in the repository component "component/node10" for testing. I'm keeping this bug open to track possible further additions (addons etc.)

Change 482392 had a related patch set uploaded (by Krinkle; owner: Krinkle):
[integration/config@master] Create node10 image

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

Change 482572 had a related patch set uploaded (by Krinkle; owner: Krinkle):
[integration/config@master] Create node-10-docker job template and use for Fresnel

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

Change 482573 had a related patch set uploaded (by Krinkle; owner: Krinkle):
[integration/config@master] Add 'control' files for node10 images

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

Change 482573 merged by jenkins-bot:
[integration/config@master] Add 'control' files for node10 images

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

Change 482572 merged by jenkins-bot:
[integration/config@master] Create node-10-docker job template and use for Fresnel

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

Change 482755 had a related patch set uploaded (by Krinkle; owner: Krinkle):
[integration/config@master] Create generic npm-test job for Node 10 (and use for jsdoc/wmf-theme)

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