sourcecred/.circleci/config.yml
Dandelion Mané e459a82fae Test node 12 and node 10
This commit changes CI to test against node 12 and 10 instead of node 8.

I test against node 12 by default (it will be LTS soon, and it has a
number of nice improvements compared to 10). We test node10 on the
nightly and post-merge, that way we will still discover quickly if we
have a problem with node 10, but it won't slow down CI for merges.

I'm just dropping explicit support for node 8 entirely, since node 8 is
end-of-life soon (Dec 19).

Test plan: I've locally verified that `yarn test --full` passes for both
node 10 and node 12.
2019-07-09 13:09:17 +01:00

79 lines
1.7 KiB
YAML

# JavaScript Node CircleCI 2.0 configuration file
#
# Check https://circleci.com/docs/2.0/language-javascript/ for more details
# See https://circleci.com/docs/2.0/config-intro/#section=configuration for spec
#
version: 2.1
executors:
node10:
docker:
- image: circleci/node:10
working_directory: ~/repo
node12:
docker:
- image: circleci/node:12
working_directory: ~/repo
commands:
set_up_node_modules:
description: "load node_modules, updating and storing back into cache if necessary"
steps:
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
# fall back to using the latest cache if no exact match is found
- v1-dependencies-
- run: yarn install
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ checksum "package.json" }}
jobs:
test:
executor: node12
steps:
- checkout
- set_up_node_modules
- run: yarn test
test_full:
executor: node12
steps:
- checkout
- set_up_node_modules
- run: yarn test --full
test_full_10:
executor: node10
steps:
- checkout
- set_up_node_modules
- run: yarn test --full
workflows:
version: 2
commit:
jobs:
- test
- test_full:
filters:
branches:
only:
- master
- test_full_10:
filters:
branches:
only:
- master
nightly:
triggers:
- schedule:
cron: "0 22 * * *" # 22:00 UTC
filters:
branches:
only:
- master
jobs:
- test_full
- test_full_10