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.
130 lines
2.9 KiB
130 lines
2.9 KiB
version: 2
|
|
|
|
defaults: &defaults
|
|
working_directory: ~/project/vue
|
|
docker:
|
|
- image: vuejs/ci
|
|
|
|
jobs:
|
|
install:
|
|
<<: *defaults
|
|
steps:
|
|
- checkout
|
|
- restore_cache:
|
|
keys:
|
|
- v1-vue-{{ .Branch }}-{{ checksum "yarn.lock" }}
|
|
- v1-vue-{{ .Branch }}-
|
|
- v1-vue-
|
|
- run: npm install
|
|
- save_cache:
|
|
key: v1-vue-{{ .Branch }}-{{ checksum "yarn.lock" }}
|
|
paths:
|
|
- node_modules/
|
|
- persist_to_workspace:
|
|
root: ~/project
|
|
paths:
|
|
- vue
|
|
|
|
lint-flow-types:
|
|
<<: *defaults
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run: npm run lint
|
|
- run: npm run flow
|
|
- 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
|
|
./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
|
|
|
|
trigger-regression-test:
|
|
<<: *defaults
|
|
steps:
|
|
- run:
|
|
command: |
|
|
curl --user ${CIRCLE_TOKEN}: \
|
|
--data build_parameters[CIRCLE_JOB]=update \
|
|
--data build_parameters[VUE_REVISION]=${CIRCLE_SHA1} \
|
|
https://circleci.com/api/v1.1/project/github/vuejs/regression-testing/tree/master
|
|
|
|
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
|
|
- trigger-regression-test:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- regression-test
|
|
requires:
|
|
- test-cover
|
|
- lint-flow-types
|
|
- test-e2e
|
|
- test-ssr-weex
|
|
weekly_regression_test:
|
|
triggers:
|
|
- schedule:
|
|
# At 13:00 UTC (9:00 EDT) on every Monday
|
|
cron: "0 13 * * 1"
|
|
filters:
|
|
branches:
|
|
only:
|
|
dev
|
|
jobs:
|
|
- install
|
|
- test-cover:
|
|
requires:
|
|
- install
|
|
- lint-flow-types:
|
|
requires:
|
|
- install
|
|
- test-e2e:
|
|
requires:
|
|
- install
|
|
- test-ssr-weex:
|
|
requires:
|
|
- install
|
|
- trigger-regression-test:
|
|
requires:
|
|
- test-cover
|
|
- lint-flow-types
|
|
- test-e2e
|
|
- test-ssr-weex
|
|
|