Browse Source

ci: migrate to CircleCI 2.0 (#6627)

Improves upon #6041
Ryo Shibayama 8 years ago
parent
commit
a5939032de
3 changed files with 83 additions and 14 deletions
  1. 83 0
      .circleci/config.yml
  2. 0 7
      build/ci.sh
  3. 0 7
      circle.yml

+ 83 - 0
.circleci/config.yml

@@ -0,0 +1,83 @@
+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

+ 0 - 7
build/ci.sh

@@ -1,7 +0,0 @@
-set -e
-npm test
-
-# report coverage stats for non-PRs
-if [[ -z $CI_PULL_REQUEST ]]; then
-  cat ./coverage/lcov.info | ./node_modules/.bin/codecov
-fi

+ 0 - 7
circle.yml

@@ -1,7 +0,0 @@
-machine:
-  node:
-    version: 6
-
-test:
-  override:
-    - bash build/ci.sh