12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- 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
- jobs:
- build:
- docker:
- - image: circleci/node:8
- working_directory: ~/project
- steps:
- - checkout
- - attach_workspace:
- at: ~/project
- # Download and cache dependencies
- - restore_cache:
- keys:
- - v1-dependencies-{{ checksum "package-lock.json" }}
- # fallback to using the latest cache if no exact match is found
- - v1-dependencies-
- - run:
- name: Install npm dependencies
- command: npm install
- - save_cache:
- paths:
- - node_modules
- key: v1-dependencies-{{ checksum "package-lock.json" }}
- lint:
- docker:
- - image: circleci/node:8
- working_directory: ~/project
- steps:
- - checkout
- - attach_workspace:
- at: ~/project
- - restore_cache:
- keys:
- - v1-dependencies-{{ checksum "package-lock.json" }}
- # fallback to using the latest cache if no exact match is found
- - v1-dependencies-
- - run:
- name: Linter
- command: npm run lint
- test:
- docker:
- - image: circleci/node:8
- working_directory: ~/project
- steps:
- - checkout
- - attach_workspace:
- at: ~/project
- - restore_cache:
- keys:
- - v1-dependencies-{{ checksum "package-lock.json" }}
- # fallback to using the latest cache if no exact match is found
- - v1-dependencies-
- - run:
- name: Unit tests
- command: npm run test
- coverage:
- docker:
- - image: circleci/node:8
- working_directory: ~/project
- steps:
- - checkout
- - attach_workspace:
- at: ~/project
- - restore_cache:
- keys:
- - v1-dependencies-{{ checksum "package-lock.json" }}
- # fallback to using the latest cache if no exact match is found
- - v1-dependencies-
- - run:
- name: Unit tests with coverage report
- command: npm run test
- environment:
- SOLIDITY_COVERAGE: true
- # TODO(xinbenlv, #1839): run SOLC_NIGHTLY to be run but allow it to fail.
- # TODO(xinbenlv, #1839): requires SLACK WEBHOOK to be setup by repo owner.
- workflows:
- version: 2
- everything:
- jobs:
- - build
- - lint:
- requires:
- - build
- - test:
- requires:
- - build
- - coverage:
- requires:
- - build
|