Skip to content

feat: new API options, retries, CI fixes and rewritten docs #80

feat: new API options, retries, CI fixes and rewritten docs

feat: new API options, retries, CI fixes and rewritten docs #80

Workflow file for this run

name: Security Checks
on:
push:
branches: [main, release]
pull_request:
branches: [main, release]
schedule:
- cron: "0 6 * * 1" # Weekly on Mondays
permissions:
contents: read
security-events: write
jobs:
govulncheck:
name: Go Vulnerability Check
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Set up Go
uses: actions/setup-go@v7
with:
go-version-file: go.mod
check-latest: true
# govulncheck itself is built with a newer toolchain than the module's
# minimum Go version, so it needs GOTOOLCHAIN=auto to fetch one.
- name: Install govulncheck
run: go install golang.org/x/vuln/cmd/govulncheck@latest
env:
GOTOOLCHAIN: auto
- name: Run govulncheck
run: govulncheck ./...
dependency-review:
name: Dependency Review
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Dependency Review
uses: actions/dependency-review-action@v5
with:
fail-on-severity: moderate
deny-licenses: GPL-2.0, GPL-3.0
gosec:
name: Security Scan
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Set up Go
uses: actions/setup-go@v7
with:
go-version-file: go.mod
check-latest: true
# -no-fail keeps the job green so the SARIF report is always uploaded;
# findings show up as code scanning alerts instead.
- name: Run Gosec Security Scanner
uses: securego/gosec@v2.28.0
with:
args: "-no-fail -fmt=sarif -out=gosec.sarif ./..."
- name: Upload SARIF file
uses: github/codeql-action/upload-sarif@v4
with:
sarif_file: gosec.sarif