aboutsummaryrefslogtreecommitdiffstats
path: root/.circleci
diff options
context:
space:
mode:
authorLeonid <logvinov.leon@gmail.com>2018-01-18 21:16:53 +0800
committerGitHub <noreply@github.com>2018-01-18 21:16:53 +0800
commite5eec04f92b51319dc55c46c9be7b9d6fe5a1e48 (patch)
tree5f3e52435f66ad1b7a73af83f95ccbff8a7cef9a /.circleci
parent87e3fe725d2070cb89c71361a3107f45336ee3bc (diff)
parentb4375d6f64fc0651c7ba347fcfe36e171fa261fc (diff)
downloaddexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar.gz
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar.bz2
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar.lz
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar.xz
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.tar.zst
dexon-sol-tools-e5eec04f92b51319dc55c46c9be7b9d6fe5a1e48.zip
Merge pull request #322 from 0xProject/fix/ci-time
Speed-up CI
Diffstat (limited to '.circleci')
-rw-r--r--.circleci/config.yml99
1 files changed, 96 insertions, 3 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
index 85b055571..d95940898 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -6,24 +6,117 @@ jobs:
- image: circleci/node:6.12
environment:
CONTRACTS_COMMIT_HASH: '9ed05f5'
+ working_directory: ~/repo
steps:
- checkout
- run: echo 'export PATH=$HOME/CIRCLE_PROJECT_REPONAME/node_modules/.bin:$PATH' >> $BASH_ENV
+ - restore_cache:
+ key: dependency-cache-{{ checksum "package.json" }}
- run:
name: yarn
- command: yarn
+ command: yarn --frozen-lockfile
- save_cache:
key: dependency-cache-{{ checksum "package.json" }}
paths:
- - ~/.cache/yarn
+ - ./node_modules
- run: wget https://s3.amazonaws.com/testrpc-shapshots/${CONTRACTS_COMMIT_HASH}.zip
- run: unzip ${CONTRACTS_COMMIT_HASH}.zip -d testrpc_snapshot
- run: node ./node_modules/lerna/bin/lerna.js bootstrap
- run: yarn lerna:run build
+ - save_cache:
+ key: repo-{{ .Environment.CIRCLE_SHA1 }}
+ paths:
+ - ~/repo
+ test-0xjs:
+ docker:
+ - image: circleci/node:6.12
+ working_directory: ~/repo
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
- run:
name: testrpc
command: npm run testrpc -- --db testrpc_snapshot
background: true
- - run: yarn lerna:run test:circleci
+ - run: yarn lerna:run --scope 0x.js test:circleci
+ test-contracts:
+ docker:
+ - image: circleci/node:6.12
+ working_directory: ~/repo
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
+ - run:
+ name: testrpc
+ command: npm run testrpc -- --db testrpc_snapshot
+ background: true
+ - run: yarn lerna:run --scope contracts test:circleci:contracts
+ test-deployer:
+ docker:
+ - image: circleci/node:6.12
+ working_directory: ~/repo
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
+ - run:
+ name: testrpc
+ command: npm run testrpc -- --db testrpc_snapshot
+ background: true
+ - run: yarn lerna:run --scope contracts test:circleci:deployer
+ test-rest:
+ docker:
+ - image: circleci/node:6.12
+ working_directory: ~/repo
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
+ - run:
+ name: testrpc
+ command: npm run testrpc -- --db testrpc_snapshot
+ background: true
+ - run: yarn lerna:run --ignore contracts --ignore 0x.js --ignore subproviders test:circleci
+ lint:
+ working_directory: ~/repo
+ docker:
+ - image: circleci/node:6.12
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn lerna:run lint
+ prettier:
+ working_directory: ~/repo
+ docker:
+ - image: circleci/node:6.12
+ steps:
+ - restore_cache:
+ keys:
+ - repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn prettier:ci
+workflows:
+ version: 2
+ main:
+ jobs:
+ - build
+ - test-0xjs:
+ requires:
+ - build
+ - test-contracts:
+ requires:
+ - build
+ - test-deployer:
+ requires:
+ - build
+ - test-rest:
+ requires:
+ - build
+ - prettier:
+ requires:
+ - build
+ - lint:
+ requires:
+ - build