name: Linux musl

env:
  DEBUG: 'napi:*'

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  build:
    name: stable - x86_64-unknown-linux-musl - node@lts
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2

      - name: Setup node
        uses: actions/setup-node@v2
        with:
          node-version: 16
          check-latest: true
          cache: 'yarn'

      - name: 'Install dependencies'
        run: yarn install --ignore-platform --frozen-lockfile --registry https://registry.npmjs.org --network-timeout 300000

      - name: 'Build TypeScript'
        run: yarn build

      - name: Setup and run tests
        uses: addnab/docker-run-action@v3
        with:
          image: ghcr.io/${{ github.repository }}/nodejs-rust:lts-alpine
          options: -v ${{ github.workspace }}:/napi-rs -w /napi-rs
          run: |
            cargo check -vvv
            yarn build:test
            yarn test