.circleci/config.yml
version: 2
jobs:
lint-build-test:
docker:
- image: circleci/node:12
working_directory: ~/repo
steps:
- run: sudo apt-get install -qy fontforge ttfautohint
- checkout
- restore_cache:
keys:
- v2-dependencies-{{ checksum "package-lock.json" }}
- v2-dependencies-
- run: npm install
- save_cache:
paths:
- node_modules
key: v2-dependencies-{{ checksum "package-lock.json" }}
- run: npm run lint
- run: npm run build
- store_artifacts:
path: ./build
- run: npm test
- store_test_results:
path: ./reports
when: always
release:
docker:
- image: circleci/node:12
working_directory: ~/repo
steps:
- run: sudo apt-get install -qy fontforge ttfautohint
- checkout
- restore_cache:
keys:
- v2-dependencies-{{ checksum "package-lock.json" }}
- v2-dependencies-
- run: npm install
- save_cache:
paths:
- node_modules
key: v2-dependencies-{{ checksum "package-lock.json" }}
- run: npm run semantic-release
workflows:
version: 2
build:
jobs:
- lint-build-test
- release:
requires:
- lint-build-test
filters:
branches:
only:
- /^(0|[1-9][0-9]*)(?:\.(0|[1-9][0-9]*|x))?\.x$/
- master
- next
- next-major
- beta
- alpha