summaryrefslogtreecommitdiff
path: root/@linaria/.circleci/config.yml
diff options
context:
space:
mode:
Diffstat (limited to '@linaria/.circleci/config.yml')
-rw-r--r--@linaria/.circleci/config.yml110
1 files changed, 110 insertions, 0 deletions
diff --git a/@linaria/.circleci/config.yml b/@linaria/.circleci/config.yml
new file mode 100644
index 0000000..804af9a
--- /dev/null
+++ b/@linaria/.circleci/config.yml
@@ -0,0 +1,110 @@
+version: 2.1
+
+executors:
+ node-v14:
+ docker:
+ - image: circleci/node:14
+ working_directory: ~/linaria
+ node-v10:
+ docker:
+ - image: circleci/node:10
+ working_directory: ~/linaria
+commands:
+ install-dependencies:
+ steps:
+ - checkout
+ - attach_workspace:
+ at: ~/linaria
+ - restore_cache:
+ keys:
+ - dependencies-{{ checksum "package.json" }}
+ - dependencies-
+ - restore_cache:
+ keys:
+ - dependencies-website-{{ checksum "website/package.json" }}
+ - dependencies-website-
+ - run: |
+ yarn install --frozen-lockfile
+ - save_cache:
+ key: dependencies-{{ checksum "package.json" }}
+ paths: node_modules
+ - save_cache:
+ key: dependencies-website-{{ checksum "website/package.json" }}
+ paths: website/node_modules
+ - persist_to_workspace:
+ root: .
+ paths: .
+ lint-and-typecheck:
+ steps:
+ - attach_workspace:
+ at: ~/linaria
+ - run: |
+ yarn test:dts
+ yarn typecheck
+ yarn lint
+ unit-tests:
+ steps:
+ - attach_workspace:
+ at: ~/linaria
+ - run: |
+ yarn test
+ unit-tests-and-coverage:
+ steps:
+ - attach_workspace:
+ at: ~/linaria
+ - run: |
+ yarn test:coverage
+ cat ./packages/*/coverage/lcov.info | ./node_modules/.bin/codecov
+ bash .circleci/comment-artifacts.sh
+ - store_artifacts:
+ path: coverage
+ destination: coverage
+ lint-website:
+ steps:
+ - attach_workspace:
+ at: ~/linaria
+ - run: |
+ yarn prepare
+ yarn --cwd website lint:css
+jobs:
+ install-dependencies:
+ executor: node-v14
+ steps:
+ - install-dependencies
+ install-dependencies-v10:
+ executor: node-v10
+ steps:
+ - install-dependencies
+ lint-and-typecheck:
+ executor: node-v14
+ steps:
+ - lint-and-typecheck
+ lint-website:
+ executor: node-v14
+ steps:
+ - lint-website
+ unit-tests-and-coverage:
+ executor: node-v14
+ steps:
+ - unit-tests-and-coverage
+ unit-tests-node-v10:
+ executor: node-v10
+ steps:
+ - unit-tests
+workflows:
+ multiple_builds:
+ jobs:
+ - install-dependencies-v10
+ - install-dependencies
+ - lint-and-typecheck:
+ requires:
+ - install-dependencies
+ - lint-website:
+ requires:
+ - install-dependencies
+ - unit-tests-and-coverage:
+ requires:
+ - install-dependencies
+ - unit-tests-node-v10:
+ requires:
+ - install-dependencies-v10