name: "build-and-test"
on: # rebuild any PRs and main branch changes
  pull_request:
  push:
    branches:
      - master
      - "releases/*"

jobs:
  build: # make sure build/ci work properly
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - run: |
          npm install
          npm run all

  test: # make sure the action works on a clean machine without building
    strategy:
      matrix:
        os:
          - ubuntu-latest
          - macos-latest
          - windows-latest
        version:
          - ""
          - "latest"
          - "v1.37"
          - "v1.37.1"
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v2
      - uses: ./
        with:
          version: ${{ matrix.version }}
          args: --issues-exit-code=0 ./sample/...
          only-new-issues: true

  test-go-mod-version:
    strategy:
      matrix:
        os:
          - ubuntu-latest
          - macos-latest
          - windows-latest
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v2
      - uses: ./
        with:
          working-directory: sample-go-mod
          args: --issues-exit-code=0 ./...
