Closed
Bug 1399281
Opened 7 years ago
Closed 7 years ago
Exact node version requirement prevents new vagrant environments from initializing
Categories
(Tree Management :: Treeherder, defect, P1)
Tree Management
Treeherder
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: garndt, Assigned: emorley)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
package.json requires an exact version of node (8.4.0), which is no longer installed in a new vagrant environment (> 8.4).
Assignee | ||
Comment 1•7 years ago
|
||
This is new - thank you for filing :-) The version of node in package.json is deliberately pinned, since that is what is used to determine the version installed by the Heroku nodejs buildpack. Whereas the Vagrant provision script uses the nodesource.com APT repository, which is occasionally more up to date until we then increment the package.json version. That has previously not been a problem - the regression here is actually that Yarn 1.0.0 made a breaking change, and now enforces the node version in package.json: https://github.com/yarnpkg/yarn/releases/tag/v1.0.0 https://github.com/yarnpkg/yarn/pull/3675 The Vagrant environment doesn't pin Yarn (since Heroku doesn't by default and Travis has no ability to do so natively; so no pinning was easier for parity between them), so will have updated from 0.x to 1.x causing this failure. Now that yarn is more stable, I'm inclined to try and pin it everywhere. When I finish up the work to switch to a Docker based development environment, it will mean we can use the same images on Travis as locally, so will have less of a dilemma in terms of pinning parity. For now we can just enable yarn pinning on Heroku/locally to fix this (plus update to nodejs 8.5.0 while we're at it).
Assignee: nobody → emorley
Status: NEW → ASSIGNED
Component: Treeherder → Treeherder: Docs & Development
Priority: -- → P1
Comment 2•7 years ago
|
||
Assignee | ||
Updated•7 years ago
|
Attachment #8907590 -
Flags: review?(cdawson)
Updated•7 years ago
|
Attachment #8907590 -
Flags: review?(cdawson) → review+
Comment 3•7 years ago
|
||
Commits pushed to master at https://github.com/mozilla/treeherder https://github.com/mozilla/treeherder/commit/e0fd996131a0f38e9e43291d5c60011a6dd8d34e Bug 1399281 - Update nodejs from 8.4.0 to 8.5.0 https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V8.md#8.5.0 https://github.com/mozilla/treeherder/commit/fc75f93a54c568316bf1d24b7c5595f9c73bee44 Bug 1399281 - Vagrant: Use --ignore-engines with yarn install To prevent errors when Vagrant provisioning after a new nodejs version is released, due to version mismatch between package.json (used by Heroku) and the APT package used by Vagrant. The other option is pinning the version in Vagrant too, however we might as well wait until the Docker based development environment where state management/invalidation is simpler.
Assignee | ||
Updated•7 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Updated•2 years ago
|
Component: Treeherder: Docs & Development → TreeHerder
You need to log in
before you can comment on or make changes to this bug.
Description
•