ci: add initial CircleCI config

This doesn't yet handle hotfixes or cron jobs
This commit is contained in:
Christopher Willis-Ford 2022-06-02 11:00:14 -07:00
parent 5cea05b8e8
commit c2c66a68d6
2 changed files with 38 additions and 1 deletions

37
.circleci/config.yml Normal file
View file

@ -0,0 +1,37 @@
version: 2.1
orbs:
node: circleci/node@5
jobs:
branch-job:
executor: node/default # defaults to LTS
steps:
- checkout
- node/install-packages
- run: npm test
- run: npx commitlint --from=`git merge-base HEAD develop`
- run: npm run build
release-job:
executor: node/default # defaults to LTS
steps:
- checkout
- node/install-packages
- run: npm test
- run: npx commitlint --from='HEAD~1'
- run: npm run build
- run: npx semantic-release
workflows:
version: 2
branch-workflow:
jobs:
- branch-job:
filters:
branches:
ignore:
- develop
release-workflow:
jobs:
- release-job:
filters:
branches:
only:
- develop

View file

@ -25,7 +25,7 @@
"tap": "tap ./test/{unit,integration}/*.js",
"tap:unit": "tap ./test/unit/*.js",
"tap:integration": "tap ./test/integration/*.js",
"test": "npm run lint && npm run docs && npm run tap",
"test": "npm run lint && npm run tap",
"watch": "webpack --progress --colors --watch",
"version": "json -f package.json -I -e \"this.repository.sha = '$(git log -n1 --pretty=format:%H)'\""
},