From e71c0b22ce7d4aec6e8e1c868f39d0d911080be9 Mon Sep 17 00:00:00 2001 From: David Glasser Date: Mon, 3 May 2021 11:35:06 -0700 Subject: [PATCH] CI: test on Node 16, switch to newer cimg images (#5137) Node 16.0.0 is now released; we should run CI against it. The older circleci/node Docker images we use in the Apollo OSS orb do not yet have 16.0.0. It seems reasonable to switch over to the "non legacy" cimg/node Docker images anyway. Those images don't have "major version" tags like 16, just tags like 16.0.0 and 16.0. So let's switch over to specifying images directly in config.yml rather than via our orb, and let Renovate update it. See https://github.com/renovatebot/renovate/blob/92aab2b30f5c0d811056a1574354e97057c42732/lib/manager/circleci/extract.ts#L49 for what Renovate is looking for. This PR does not convert to using npm v7 (and its new package-lock.json format); we should do that soon. --- .circleci/config.yml | 16 ++++++++++++++-- docs/package.json | 2 +- package.json | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 18ee530089f..453b8ead2c9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -38,7 +38,8 @@ jobs: # at https://hub.docker.com/r/circleci/node/. NodeJS 12: - executor: { name: oss/node, tag: '12' } + docker: + - image: cimg/node:12.22.1 steps: - common_test_steps # We will save the results of this one particular invocation to use in @@ -52,7 +53,14 @@ jobs: - ./** NodeJS 14: - executor: { name: oss/node, tag: '14' } + docker: + - image: cimg/node:14.16.1 + steps: + - common_test_steps + + NodeJS 16: + docker: + - image: cimg/node:16.0.0 steps: - common_test_steps @@ -104,6 +112,8 @@ workflows: <<: *common_non_publish_filters - NodeJS 14: <<: *common_non_publish_filters + - NodeJS 16: + <<: *common_non_publish_filters - "Check for FIXM\x45" - oss/lerna_tarballs: name: Package tarballs @@ -111,12 +121,14 @@ workflows: requires: - NodeJS 12 - NodeJS 14 + - NodeJS 16 - oss/dry_run: name: Dry-run <<: *common_publish_filters requires: - NodeJS 12 - NodeJS 14 + - NodeJS 16 - oss/confirmation: name: Confirmation type: approval diff --git a/docs/package.json b/docs/package.json index 6e90d91c526..745980de0f5 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,6 +1,6 @@ { "engines": { - "node": ">=14 <15", + "node": ">=16 <17", "npm": "6.x" }, "scripts": { diff --git a/package.json b/package.json index 34c37152e7d..4468c5c94be 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "coverage:upload": "codecov" }, "engines": { - "node": ">=14.0 <15.0", + "node": ">=12", "npm": "^6.14.11" }, "dependencies": {