name: Go tests (windows) on: push: branches: - master - releases/** paths-ignore: - 'README.md' pull_request: branches: - master - releases/** paths-ignore: - 'README.md' env: RICHGO_FORCE_COLOR: 1 CROWDSEC_FEATURE_DISABLE_HTTP_RETRY_BACKOFF: true jobs: build: name: "Build + tests" runs-on: windows-2022 steps: - name: Check out CrowdSec repository uses: actions/checkout@v4 with: fetch-depth: 0 submodules: false - name: "Set up Go" uses: actions/setup-go@v5 with: go-version: "1.21.8" - name: Build run: | make build BUILD_RE2_WASM=1 - name: Run tests run: | go install github.com/kyoh86/richgo@v0.3.10 go test -coverprofile coverage.out -covermode=atomic ./... > out.txt if(!$?) { cat out.txt | sed 's/ *coverage:.*of statements in.*//' | richgo testfilter; Exit 1 } cat out.txt | sed 's/ *coverage:.*of statements in.*//' | richgo testfilter - name: Upload unit coverage to Codecov uses: codecov/codecov-action@v4 with: files: coverage.out flags: unit-windows - name: golangci-lint uses: golangci/golangci-lint-action@v4 with: version: v1.55 args: --issues-exit-code=1 --timeout 10m only-new-issues: false # the cache is already managed above, enabling it here # gives errors when extracting skip-pkg-cache: true skip-build-cache: true