| --- |
| # This action is synced from https://github.com/prometheus/prometheus |
| name: golangci-lint |
| on: |
| push: |
| paths: |
| - "go.sum" |
| - "go.mod" |
| - "**.go" |
| - "scripts/errcheck_excludes.txt" |
| - ".github/workflows/golangci-lint.yml" |
| - ".golangci.yml" |
| pull_request: |
| |
| permissions: # added using https://github.com/step-security/secure-repo |
| contents: read |
| |
| jobs: |
| golangci: |
| permissions: |
| contents: read # for actions/checkout to fetch code |
| pull-requests: read # for golangci/golangci-lint-action to fetch pull requests |
| name: lint |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout repository |
| uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 |
| with: |
| persist-credentials: false |
| - name: Install Go |
| uses: actions/setup-go@4dc6199c7b1a012772edbd06daecab0f50c9053c # v6.1.0 |
| with: |
| go-version: 1.25.x |
| - name: Install snmp_exporter/generator dependencies |
| run: sudo apt-get update && sudo apt-get -y install libsnmp-dev |
| if: github.repository == 'prometheus/snmp_exporter' |
| - name: Get golangci-lint version |
| id: golangci-lint-version |
| run: echo "version=$(make print-golangci-lint-version)" >> $GITHUB_OUTPUT |
| - name: Lint |
| uses: golangci/golangci-lint-action@1e7e51e771db61008b38414a730f564565cf7c20 # v9.2.0 |
| with: |
| args: --verbose |
| version: ${{ steps.golangci-lint-version.outputs.version }} |