Setup experience software API #16285
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: golangci-lint | |
on: | |
push: | |
branches: | |
- main | |
- patch-* | |
- prepare-* | |
paths: | |
- '**.go' | |
pull_request: | |
paths: | |
- '**.go' | |
- '.github/workflows/golangci-lint.yml' | |
workflow_dispatch: # Manual | |
# This allows a subsequently queued workflow run to interrupt previous runs | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id}} | |
cancel-in-progress: true | |
defaults: | |
run: | |
# fail-fast using bash -eo pipefail. See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#exit-codes-and-error-action-preference | |
shell: bash | |
permissions: | |
contents: read | |
jobs: | |
golangci: | |
permissions: | |
contents: read # for actions/checkout to fetch code | |
pull-requests: read # for actions/checkout to fetch pull requests | |
name: lint | |
strategy: | |
fail-fast: false | |
matrix: | |
# See #9943, we just need to add windows-latest here once all issues are fixed. | |
os: [ubuntu-latest, macos-latest] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Harden Runner | |
uses: step-security/harden-runner@63c24ba6bd7ba022e95695ff85de572c04a18142 # v2.7.0 | |
with: | |
egress-policy: audit | |
- name: Checkout code | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 | |
- name: Install Go | |
uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 | |
with: | |
go-version-file: 'go.mod' | |
- name: Install dependencies (Linux) | |
if: matrix.os == 'ubuntu-latest' | |
run: | | |
# The following packages are needed to build Fleet Desktop on Ubuntu. | |
sudo apt update -y && sudo apt install -y gcc libgtk-3-dev libayatana-appindicator3-dev | |
- name: Run go lint | |
run: | | |
# Don't forget to update | |
# docs/Contributing/Testing-and-local-development.md when this | |
# version changes | |
go install github.com/golangci/golangci-lint/cmd/golangci-lint@e3c2265f4939976874989e159386b3bb7dcf8e1f # v1.55.2 | |
make lint-go | |
- name: Run cloner-check tool | |
run: | | |
go run ./tools/cloner-check/main.go -check |