name: Lint on: push: tags: - v* pull_request: permissions: contents: read pull-requests: read jobs: golangci-lint: name: golangci-lint runs-on: ubuntu-latest steps: - uses: actions/setup-go@v5 with: go-version: "1.22" - uses: actions/checkout@v4 - name: golangci-lint uses: golangci/golangci-lint-action@v4 with: # Optional: version of golangci-lint to use in form of v1.2 or v1.2.3 or `latest` to use the latest version version: latest # Optional: working directory, useful for monorepos # working-directory: somedir # Optional: golangci-lint command line arguments. args: --enable bodyclose --enable exportloopref --timeout 10m # Optional: if set to true then the action don't cache or restore ~/go/pkg. # skip-pkg-cache: true # Optional: if set to true then the action don't cache or restore ~/.cache/go-build. # skip-build-cache: true semgrep: name: semgrep runs-on: ubuntu-latest container: image: returntocorp/semgrep if: (github.actor != 'dependabot[bot]') steps: - uses: actions/checkout@v4 - run: semgrep --config=hack/semgrep-rules/detectors.yaml pkg/detectors/