123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- version: 2
- # 2.1 does not yet support local run
- # unless with workaround. For simplicity just use it.
- # https://github.com/CircleCI-Public/circleci-cli/issues/79
- aliases:
- - &defaults
- docker:
- - image: circleci/node:10
- - &cache_key_node_modules
- key: v1-node_modules-{{ checksum "package-lock.json" }}
- jobs:
- dependencies:
- <<: *defaults
- steps:
- - checkout
- - restore_cache:
- <<: *cache_key_node_modules
- - run:
- name: Install npm dependencies and prepare
- command: |
- if [ ! -d node_modules ]; then
- npm ci
- else
- npm run prepare
- fi
- - persist_to_workspace:
- root: .
- paths:
- - node_modules
- - build
- - save_cache:
- paths:
- - node_modules
- <<: *cache_key_node_modules
- lint:
- <<: *defaults
- steps:
- - checkout
- - attach_workspace:
- at: .
- - run:
- name: Linter
- command: npm run lint
- test:
- <<: *defaults
- steps:
- - checkout
- - attach_workspace:
- at: .
- - run:
- name: Unit tests
- command: npm run test
- coverage:
- <<: *defaults
- steps:
- - checkout
- - attach_workspace:
- at: .
- - run:
- name: Unit tests with coverage report
- command: npm run coverage
- # TODO(xinbenlv, #1839): run SOLC_NIGHTLY to be run but allow it to fail.
- workflows:
- version: 2
- everything:
- jobs:
- - dependencies
- - lint:
- requires:
- - dependencies
- - test:
- requires:
- - dependencies
- - coverage:
- requires:
- - dependencies
|