Files
go-test-sarif/.github/workflows/test.yml

47 lines
1.2 KiB
YAML

---
name: Run Go Tests and Generate SARIF
on:
push:
branches:
- main
pull_request:
permissions: read-all
jobs:
test:
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
- name: Checkout code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Setup Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version-file: "go.mod"
- name: Install golangci-lint
uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0
with:
version: latest
- name: Run Linters
run: |
go vet ./...
golangci-lint run
- name: Run Go Tests
shell: bash
run: go test -json ./... > go-test-results.json
- name: Convert JSON to SARIF
run: go run ./cmd/main.go go-test-results.json go-test-results.sarif
- name: Upload SARIF to GitHub Security Tab
uses: github/codeql-action/upload-sarif@76621b61decf072c1cee8dd1ce2d2a82d33c17ed # v3.29.8
with:
sarif_file: go-test-results.sarif