name: Release

on:
  push:
    tags: ["*"]

jobs:
  build:
    runs-on: windows-2019

    steps:
      - uses: actions/checkout@v3

      - uses: actions/setup-node@v3
        with:
          node-version: 18
          cache: "npm"

      - name: Setup environment
        run: npm install

      - name: Prebuild addon
        run: npm run prebuild:build

      - name: Prebuild upload
        run: npm run prebuild:upload
        env:
          GITHUB_AUTH_TOKEN: ${{ secrets.GH_TOKEN }}

  publish:
    runs-on: windows-2019

    steps:
      - uses: actions/checkout@v3

      - uses: actions/setup-node@v3
        with:
          node-version: 18
          cache: "npm"

      - name: Setup environment
        run: npm install

      - name: Publish package
        uses: JS-DevTools/npm-publish@v2
        with:
          token: ${{ secrets.NPM_TOKEN }}
