.github/workflows/ci.yml
name: CI
on:
push:
pull_request:
branches: [ master ]
env:
FORCE_COLOR: 1
jobs:
test:
name: test (node@${{matrix.node}})
runs-on: ${{ matrix.os }}
strategy:
matrix:
node: [0.12, 4, 6, 8, 10, 12, 14]
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node }}
registry-url: https://registry.npmjs.org/
- run: npm install
- run: npm test
- run: npm run coverage
- run: npm run coverage:report
env:
CODECLIMATE_REPO_TOKEN: 3e833448cdac80032731f87794884ab46ea8f154e4822bcc2b896a0cb743541f
- name: inspect tarball
run: npm pack
publish:
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/') && github.event_name != 'pull_request'
needs: test
steps:
- uses: actions/checkout@v2
- name: Use Node.js 14
uses: actions/setup-node@v2
with:
node-version: 14
registry-url: https://registry.npmjs.org/
- run: npm install
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}