on: [push, pull_request] name: Go jobs: macos_test: name: Test MacOS strategy: matrix: go-version: [1.25.x, 1.26.x] platform: [macos-latest] runs-on: ${{ matrix.platform }} steps: - name: Install Go uses: actions/setup-go@4b73464bb391d4059bd26b0524d20df3927bd417 # v6.3.0 with: go-version: ${{ matrix.go-version }} id: go - name: Checkout code uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download dependencies run: go mod download - name: Go Vet run: go vet ./... - name: Fuzz build run: go build -tags=gofuzz ./... - name: Test run: go test ./... linux_test: name: Test Linux Integration strategy: matrix: go-version: [1.25.x, 1.26.x] platform: [ubuntu-latest] runs-on: ${{ matrix.platform }} steps: - name: Install Go uses: actions/setup-go@4b73464bb391d4059bd26b0524d20df3927bd417 # v6.3.0 with: go-version: ${{ matrix.go-version }} id: go - name: Checkout code uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Download dependencies run: go mod download - name: Go Vet run: go vet ./... - name: Fuzz build run: go build -tags=gofuzz ./... - name: Test Integration run: sudo -E env PATH=$PATH go test -v -tags=integration ./... govuln_check: name: Check for vulnerabilities strategy: matrix: go-version: [1.25.x, 1.26.x] platform: [ubuntu-latest] runs-on: ${{ matrix.platform }} steps: - name: Check for vulnerabilities id: govulncheck uses: golang/govulncheck-action@b625fbe08f3bccbe446d94fbf87fcc875a4f50ee with: cache: false go-version-input: ${{ matrix.go-version }} go-package: ./...