version: 2.1 orbs: node: circleci/node@3.0.0 jobs: test: docker: - image: node:10.18.0 working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "package.json" }} - v1-dependencies- - run: yarn install - save_cache: paths: - node_modules key: v1-dependencies-{{ checksum "package.json" }} - run: yarn run test check_format : docker: - image: node:10.18.0 working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "package.json" }} - v1-dependencies- - run: yarn install - save_cache: paths: - node_modules key: v1-dependencies-{{ checksum "package.json" }} - run: yarn format:write && yarn format:check build: docker: - image: node:10.18.0 working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "package.json" }} - v1-dependencies- - run: yarn install - save_cache: paths: - node_modules key: v1-dependencies-{{ checksum "package.json" }} - run: yarn run build deploy_to_netlify: docker: - image: node:10.18.0 working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "package.json" }} - v1-dependencies- - run: yarn install - save_cache: paths: - node_modules key: v1-dependencies-{{ checksum "package.json" }} - run: yarn global add netlify-cli - run: yarn run build && yarn run netlify:deploy workflows: project_workflows: jobs: - test - check_format - build: requires: - test - deploy_to_netlify: requires: - build filters: branches: only: main