2
0
mirror of https://github.com/tenrok/vue-meta.git synced 2026-06-23 21:50:33 +03:00

test(circleci): update to 2.1 config

This commit is contained in:
pimlie
2019-03-23 15:27:10 +01:00
committed by Pim
parent 0c3a29e4f3
commit d3e3015e8d
+71 -103
View File
@@ -1,157 +1,96 @@
version: 2 version: 2.1
defaults: &defaults executors:
working_directory: ~/project node:
docker: parameters:
- image: circleci/node:latest browsers:
environment: type: boolean
NODE_ENV: test default: false
docker:
- image: circleci/node:latest<<# browsers >>-browsers<</ browsers >>
working_directory: ~/project
environment:
NODE_ENV: test
commands:
attach-project:
steps:
- checkout
- attach_workspace:
at: ~/project
jobs: jobs:
setup: setup:
<<: *defaults executor: node
steps: steps:
# Checkout repository
- checkout - checkout
# Restore cache
- restore_cache: - restore_cache:
key: yarn-{{ checksum "yarn.lock" }} key: yarn-{{ checksum "yarn.lock" }}
# Install dependencies
- run: - run:
name: Install Dependencies name: Install Dependencies
command: NODE_ENV=dev yarn command: NODE_ENV=dev yarn
# Keep cache
- save_cache: - save_cache:
key: yarn-{{ checksum "yarn.lock" }} key: yarn-{{ checksum "yarn.lock" }}
paths: paths:
- "node_modules" - "node_modules"
# Persist workspace
- persist_to_workspace: - persist_to_workspace:
root: ~/project root: ~/project
paths: paths:
- node_modules - node_modules
lint: lint:
<<: *defaults executor: node
steps: steps:
- checkout - attach-project
- attach_workspace:
at: ~/project
- run: - run:
name: Lint name: Lint
command: yarn lint command: yarn lint
audit: audit:
<<: *defaults executor: node
steps: steps:
- checkout - attach-project
- attach_workspace:
at: ~/project
- run: - run:
name: Security Audit name: Security Audit
command: yarn audit command: yarn audit
test-unit: test-unit:
<<: *defaults executor: node
steps: steps:
- checkout - attach-project
- attach_workspace:
at: ~/project
- run: - run:
name: Unit Tests name: Unit Tests
command: yarn test:unit --coverage && yarn coverage command: yarn test:unit --coverage && yarn coverage
test-e2e-ssr: test-e2e-ssr:
<<: *defaults executor: node
steps: steps:
- checkout - attach-project
- attach_workspace:
at: ~/project
- run: - run:
name: E2E Tests name: E2E SSR Tests
command: yarn test:e2e-ssr command: yarn test:e2e-ssr
# Persist workspace
- persist_to_workspace: - persist_to_workspace:
root: ~/project root: ~/project
paths: paths:
- test/fixtures - test/fixtures
test-e2e-firefox: test-e2e-browser:
<<: *defaults parameters:
docker: browserString:
- image: circleci/node:latest-browsers type: string
executor:
name: node
browsers: true
steps: steps:
- checkout - attach-project
- attach_workspace:
at: ~/project
- run: - run:
name: E2E Tests name: E2E Browser Tests
command: yarn test:e2e-browser command: yarn test:e2e-browser
environment: environment:
BROWSER_STRING: firefox/headless BROWSER_STRING: << parameters.browserString >>
test-e2e-chrome:
<<: *defaults
docker:
- image: circleci/node:latest-browsers
steps:
- checkout
- attach_workspace:
at: ~/project
- run:
name: E2E Tests
command: yarn test:e2e-browser
environment:
BROWSER_STRING: chrome/selenium
test-e2e-ie:
<<: *defaults
docker:
- image: circleci/node:latest-browsers
steps:
- checkout
- attach_workspace:
at: ~/project
- run:
name: E2E Tests
command: yarn test:e2e-browser
environment:
BROWSER_STRING: browserstack/local/ie:9
test-e2e-edge:
<<: *defaults
docker:
- image: circleci/node:latest-browsers
steps:
- checkout
- attach_workspace:
at: ~/project
- run:
name: E2E Tests
command: yarn test:e2e-browser
environment:
BROWSER_STRING: browserstack/local/edge:15
test-e2e-safari:
<<: *defaults
docker:
- image: circleci/node:latest-browsers
steps:
- checkout
- attach_workspace:
at: ~/project
- run:
name: E2E Tests
command: yarn test:e2e-browser
environment:
BROWSER_STRING: browserstack/local/os x=snow leopard/safari:5.1
workflows: workflows:
version: 2 version : 2
commit: commit:
jobs: jobs:
@@ -160,5 +99,34 @@ workflows:
- audit: { requires: [setup] } - audit: { requires: [setup] }
- test-unit: { requires: [lint] } - test-unit: { requires: [lint] }
- test-e2e-ssr: { requires: [lint] } - test-e2e-ssr: { requires: [lint] }
- test-e2e-firefox: { requires: [test-e2e-ssr] } - test-e2e-browser:
- test-e2e-ie: { requires: [test-e2e-ssr] } browserString: firefox/headless
requires:
- test-e2e-ssr
- test-e2e-browser:
browserString: chrome/selenium
requires:
- test-e2e-ssr
- test-e2e-browser:
browserString: browserstack/local/ie:9
requires:
- test-e2e-ssr
filter:
brances:
ignore: /^pull\/.*/
- test-e2e-browser:
browserString: browserstack/local/edge:15
requires:
- test-e2e-ssr
filter:
brances:
ignore: /^pull\/.*/
- test-e2e-browser:
browserString: browserstack/local/os x=snow leopard/safari:5.1
requires:
- test-e2e-ssr
filter:
brances:
ignore: /^pull\/.*/