Skip to content

Commit 498101c

Browse files
motiz88Setito
authored andcommitted
Use Node v14 in Windows CircleCI jobs (facebook#31656)
Summary: Pull Request resolved: facebook#31656 CircleCI's Windows executor currently ships with a pre-LTS release of Node v12, breaking our Windows jobs ([example](https://app.circleci.com/pipelines/github/facebook/react-native/9280/workflows/21e6e59c-d853-47a1-af62-1368c8ce10ce/jobs/203983)) following facebook#30637, ultimately due to jestjs/jest#10685 dropping support for non-LTS versions in the Node v12 release line. Luckily, the Windows executor [does ship with nvm](circleci/circleci-docs#3733) so we can use that to install a desired Node version. Rather than just pinning a later v12 release that is LTS, we pin a v14 release that is currently the most recent LTS version. NOTE: The nvm on CircleCI is https://github.com/coreybutler/nvm-windows, not https://github.com/nvm-sh/nvm, and the two aren't interchangeable. [nvm-windows has no functionality to install the latest version of a release line](coreybutler/nvm-windows#156) so we're forced to specify an exact version, which will need to be bumped manually in the future. This isn't great, but IMO it's no worse than the current situation, where we use whichever stale version of Node happens to be bundled with the Windows CircleCI executor. Changelog: [Internal] Reviewed By: GijsWeterings Differential Revision: D28896581 fbshipit-source-id: a412376cf36054de49efa49866fe60dd964567c5
1 parent 1557781 commit 498101c

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

.circleci/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ executors:
2727
nodelts:
2828
<<: *defaults
2929
docker:
30+
# Note: Version set separately for Windows builds, see below.
3031
- image: circleci/node:14
3132
nodeprevlts:
3233
<<: *defaults
@@ -624,6 +625,13 @@ jobs:
624625
steps:
625626
- checkout
626627

628+
- run:
629+
name: Install Node
630+
# Note: Version set separately for non-Windows builds, see above.
631+
command: |
632+
nvm install 14.17.0
633+
nvm use 14.17.0
634+
627635
# Setup Dependencies
628636
- run:
629637
name: Install Yarn

0 commit comments

Comments
 (0)