You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.8 KiB
83 lines
1.8 KiB
version: 2
|
|
|
|
defaults: &defaults
|
|
working_directory: ~/project/vue
|
|
docker:
|
|
- image: circleci/node:6-browsers
|
|
|
|
jobs:
|
|
install:
|
|
<<: *defaults
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
keys:
|
|
- v1-vue-{{ .Branch }}-{{ checksum "package-lock.json" }}
|
|
- v1-vue-{{ .Branch }}-
|
|
- v1-vue-
|
|
- run:
|
|
name: Install Dependencies
|
|
command: npm install
|
|
- save_cache:
|
|
key: v1-vue-{{ .Branch }}-{{ checksum "package-lock.json" }}
|
|
paths:
|
|
- node_modules/
|
|
- persist_to_workspace:
|
|
root: ~/project
|
|
paths:
|
|
- vue
|
|
|
|
lint-flow-types:
|
|
<<: *defaults
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run: npm run lint
|
|
- run: node_modules/.bin/flow check
|
|
- run: npm run test:types
|
|
|
|
test-cover:
|
|
<<: *defaults
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run: npm run test:cover
|
|
- run:
|
|
name: report coverage stats for non-PRs
|
|
command: |
|
|
if [[ -z $CI_PULL_REQUEST ]]; then
|
|
cat ./coverage/lcov.info | ./node_modules/.bin/codecov
|
|
fi
|
|
|
|
test-e2e:
|
|
<<: *defaults
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run: npm run test:e2e -- --env phantomjs
|
|
|
|
test-ssr-weex:
|
|
<<: *defaults
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run: npm run test:ssr
|
|
- run: npm run test:weex
|
|
|
|
workflows:
|
|
version: 2
|
|
install-and-parallel-test:
|
|
jobs:
|
|
- install
|
|
- test-cover:
|
|
requires:
|
|
- install
|
|
- lint-flow-types:
|
|
requires:
|
|
- install
|
|
- test-e2e:
|
|
requires:
|
|
- install
|
|
- test-ssr-weex:
|
|
requires:
|
|
- install
|
|
|