name: build-and-test on: [push, pull_request] jobs: build: strategy: matrix: version: ['1.22'] os: [ubuntu-latest, windows-latest, macos-latest] name: Build runs-on: ${{ matrix.os }} steps: - name: Set up Go uses: actions/setup-go@v3 with: go-version: '${{ matrix.version }}' id: go - name: checkout uses: actions/checkout@v3 - name: build run: go build - name: test run: make test - name: Update coverage report uses: ncruces/go-coverage-report@main with: report: true chart: true amend: true if: | matrix.os == 'ubuntu-latest' && github.event_name == 'push' continue-on-error: true golangci: name: lint runs-on: ubuntu-latest steps: - uses: actions/setup-go@v3 with: go-version: 1.22 - uses: actions/checkout@v3 - name: golangci-lint uses: golangci/golangci-lint-action@v3