saepequia
Version:
A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps
112 lines (110 loc) • 2.71 kB
YAML
version: 2.1
executors:
node-v12:
docker:
- image: circleci/node:12
working_directory: ~/linaria
node-v10:
docker:
- image: circleci/node:10
working_directory: ~/linaria
commands:
install-dependencies:
steps:
- checkout
- attach_workspace:
at: ~/linaria
- restore_cache:
keys:
- dependencies-{{ checksum "package.json" }}
- dependencies-
- restore_cache:
keys:
- dependencies-website-{{ checksum "website/package.json" }}
- dependencies-website-
- run: |
yarn install --frozen-lockfile
yarn install --frozen-lockfile --cwd website
- save_cache:
key: dependencies-{{ checksum "package.json" }}
paths: node_modules
- save_cache:
key: dependencies-website-{{ checksum "website/package.json" }}
paths: website/node_modules
- persist_to_workspace:
root: .
paths: .
lint-and-typecheck:
steps:
- attach_workspace:
at: ~/linaria
- run: |
yarn lint
yarn typecheck
yarn test:dts
unit-tests:
steps:
- attach_workspace:
at: ~/linaria
- run: |
yarn test
unit-tests-and-coverage:
steps:
- attach_workspace:
at: ~/linaria
- run: |
yarn test --coverage
cat ./coverage/lcov.info | ./node_modules/.bin/codecov
bash .circleci/comment-artifacts.sh
- store_artifacts:
path: coverage
destination: coverage
lint-website:
steps:
- attach_workspace:
at: ~/linaria
- run: |
yarn prepare
yarn --cwd website lint:css
jobs:
install-dependencies:
executor: node-v12
steps:
- install-dependencies
install-dependencies-v10:
executor: node-v10
steps:
- install-dependencies
lint-and-typecheck:
executor: node-v12
steps:
- lint-and-typecheck
lint-website:
executor: node-v12
steps:
- lint-website
unit-tests-and-coverage:
executor: node-v12
steps:
- unit-tests-and-coverage
unit-tests-node-v10:
executor: node-v10
steps:
- unit-tests
workflows:
multiple_builds:
jobs:
- install-dependencies-v10
- install-dependencies
- lint-and-typecheck:
requires:
- install-dependencies
- lint-website:
requires:
- install-dependencies
- unit-tests-and-coverage:
requires:
- install-dependencies
- unit-tests-node-v10:
requires:
- install-dependencies-v10