diff --git a/.circleci/config.yml b/.circleci/config.yml index e212386..6dbddeb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,8 +6,12 @@ orbs: executors: circleci-node: docker: - - image: cimg/node:12.22 + - image: cimg/node:<< parameters.node-version >> working_directory: ~/project/build-node + parameters: + node-version: + default: "16.14" + type: string commands: npm-install: @@ -21,6 +25,7 @@ references: # # Workspace # + workspace_root: &workspace_root ~/project attach_workspace: @@ -28,8 +33,10 @@ references: attach_workspace: at: *workspace_root + # # Filters # + filters_only_renovate_nori: &filters_only_renovate_nori branches: @@ -54,6 +61,10 @@ references: jobs: build-node: executor: circleci-node + parameters: + node-version: + default: "16.14" + type: string steps: - checkout - node/install-npm: @@ -65,6 +76,10 @@ jobs: - build-node test-node: executor: circleci-node + parameters: + node-version: + default: "16.14" + type: string steps: - *attach_workspace - run: @@ -73,6 +88,10 @@ jobs: publish: executor: circleci-node + parameters: + node-version: + default: "16.14" + type: string steps: - *attach_workspace - run: @@ -103,9 +122,17 @@ workflows: - build-node: filters: <<: *filters_branch_build_renovate_nori + name: build-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] - test-node: requires: - - build-node + - build-node-v<< matrix.node-version >> + name: test-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] renovate-nori-build-test: jobs: @@ -116,23 +143,39 @@ workflows: - build-node: requires: - waiting-for-approval + name: build-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] - test-node: requires: - - build-node + - build-node-v<< matrix.node-version >> + name: test-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] build-test-publish: jobs: - build-node: filters: <<: *filters_release_package_build + name: build-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] - test-node: filters: <<: *filters_release_package_build requires: - - build-node + - build-node-v<< matrix.node-version >> + name: test-node-v<< matrix.node-version >> + matrix: + parameters: + node-version: [ "16.14", "14.19" ] - publish: context: npm-publish-token filters: <<: *filters_release_package_build requires: - - test-node + - test-node-v16.14 diff --git a/.nvmrc b/.nvmrc index 48082f7..b6a7d89 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -12 +16 diff --git a/package.json b/package.json index bbd7989..99ca57e 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ }, "homepage": "https://github.com/Financial-Times/ebi#readme", "engines": { - "node": "12.x", + "node": "14.x || 16.x", "npm": "7.x || 8.x" }, "husky": { @@ -63,7 +63,7 @@ "prettier": "1.17.0" }, "volta": { - "node": "12.22.5", + "node": "16.14.1", "npm": "7.20.2" } }