.github/workflows/npm_publish.yml
name: npm package
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:5.7
env:
MYSQL_DATABASE: "funnode"
MYSQL_USER: "root"
MYSQL_PASS: "password"
MYSQL_ROOT_PASSWORD: "password"
ports:
- 3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
- run: npm ci
- run: npm run test
- uses: paambaati/codeclimate-action@v2.3.0
env:
CC_TEST_REPORTER_ID: ${{secrets.cc_reporter_id}}
with:
coverageCommand: npm run coverage
publish-gpr:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
registry-url: https://npm.pkg.github.com/
scope: '@RaviPatel'
- run: npm ci
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.gpr_personal_token}}