neutrino-middleware-jsxbin
Version:
Neutrino middleware for creating JSX binaries.
62 lines (59 loc) • 1.45 kB
YAML
version: 2
defaults:
working_directory: ~/repo
docker:
- image: circleci/node:8.9.1
jobs:
build:
<<:
steps:
- checkout
- restore_cache:
keys:
- v1-dependencies-{{ checksum "package.json" }}
- v1-dependencies-
- run: npm install --force
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ checksum "package.json" }}
- run:
name: Ava Suite
command: |
mkdir -p ~/reports
./node_modules/.bin/ava --tap | ./node_modules/.bin/tap-xunit > ~/reports/ava.xml
- store_test_results:
path: ~/reports
- store_artifacts:
path: ~/reports
- persist_to_workspace:
root: ~/repo
paths: .
deploy:
<<:
steps:
- attach_workspace:
at: ~/repo
- run:
name: Authenticate with registry
command: echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" > ~/repo/.npmrc
- run:
name: Publish package
command: npm publish
workflows:
version: 2
build-and-deploy:
jobs:
- build:
filters:
tags:
only: /.*/
- deploy:
context: open-source
requires:
- build
filters:
tags:
only: /^v.*/
branches:
ignore: /.*/