Page MenuHomePhabricator

Fix node vs nodejs dependency issue
Closed, ResolvedPublic

Description

During T198622, we observed kartotherian failed to start due to dependency on nodejs-legacy even though nodejs was installed.
I will suggest creating a sym link via puppet /usr/bin/node -> /usr/bin/nodejs, but this is the dirty way I guess. So suggestions are really welcomed!

Event Timeline

if you install the nodejs-legacy package, it will provide a symlink from node to nodejs.

if you install the nodejs-legacy package, it will provide a symlink from node to nodejs.

I was going to say the same :)

What we really need to do is to find what is calling /usr/bin/node and fix it so that it calls /usr/bin/nodejs

But it could also be one of 'millions' of nodes modules in node_modules calling /usr/bin/node or /usr/bin/nodejs

True that, also note that in the nodejs 10 packages (from component/node10), the nodejs-legacy package is gone. Debian dropped it, we could patch it back in, but it probably makes sense to fix this mid-term.

But it could also be one of 'millions' of nodes modules in node_modules calling /usr/bin/node or /usr/bin/nodejs

While this is technically true, it is also very unlikely. Most of the node modules that we use are only libraries, they will not fork a new node instance. If I had to guess, I'd say that we are using an old version of service runner which is still not using nodejs. @MSantos probably has a good idea about this, maybe even a patch ready.

CDanis triaged this task as Medium priority.Jan 18 2019, 4:11 PM

Change 508835 had a related patch set uploaded (by Gehel; owner: Gehel):
[operations/puppet@production] maps: remove nodejs-legacy

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

Change 508835 merged by Gehel:
[operations/puppet@production] maps: remove nodejs-legacy

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

Should be fixed after:

commit 2c85e694e0bf2e4fa5b4489b8cd7a01bef196786
Author: Guillaume Lederrey <guillaume.lederrey@wikimedia.org>
Date:   Wed May 8 16:31:47 2019 +0200

    maps: remove nodejs-legacy
    
    Does not seem to actually be needed, and conflicts with nodejs 10.
    
    Bug: T214153
    Change-Id: I4f971e9e99ea5605f5344448e293059db6827794
Jgiannelos claimed this task.