name: prbuild
on:
  pull_request:
    branches:
    - master
jobs:
  test:
    name: test
    runs-on: ubuntu-latest
    steps:
    - name: setup
      uses: actions/setup-go@v2
      with:
        go-version: 1.16
    - name: checkout
      uses: actions/checkout@v2
    - name: cache
      uses: actions/cache@v2
      with:
        path: ~/go/pkg/mod
        key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
        restore-keys: ${{ runner.os }}-go-
    - name: deps
      run: go get -v -t -d ./...
    - name: test
      env:
        INTEGRATION_TESTS: yes
      run: go test -mod readonly -v ./...
  lint:
    name: lint
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
      - name: lint
        uses: golangci/golangci-lint-action@v2
        continue-on-error: true
        with:
          # Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version.
          version: v1.30
          # Optional: working directory, useful for monorepos
          # working-directory: somedir
          # Optional: golangci-lint command line arguments.
          # args: --issues-exit-code=0
          # Optional: show only new issues if it's a pull request. The default value is `false`.
          # only-new-issues: true
