Merge pull request #86 from go-faster/dependabot/github_actions/codec… #147
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: Lint | |
on: | |
push: | |
tags: | |
- v* | |
branches: | |
- main | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
golangci-lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: 1.17 | |
- name: Lint | |
uses: golangci/[email protected] | |
with: | |
version: latest | |
args: --timeout 5m | |
skip-go-installation: true | |
# Check if there are any dirty changes after go mod tidy | |
check-mod: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: 1.17 | |
- name: Get Go environment | |
id: go-env | |
run: | | |
echo "::set-output name=cache::$(go env GOCACHE)" | |
echo "::set-output name=modcache::$(go env GOMODCACHE)" | |
- name: Set up cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
${{ steps.go-env.outputs.cache }} | |
${{ steps.go-env.outputs.modcache }} | |
key: check-mod-${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
check-mod-${{ runner.os }}-go- | |
- name: Download dependencies | |
run: go mod download && go mod tidy | |
- name: Check git diff | |
run: git diff --exit-code | |
# Check if there are any dirty changes after go generate | |
check-generate: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: 1.17 | |
- name: Get Go environment | |
id: go-env | |
run: | | |
echo "::set-output name=cache::$(go env GOCACHE)" | |
echo "::set-output name=modcache::$(go env GOMODCACHE)" | |
- name: Set up cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
${{ steps.go-env.outputs.cache }} | |
${{ steps.go-env.outputs.modcache }} | |
key: check-generate-${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
check-generate-${{ runner.os }}-go- | |
- name: Download dependencies | |
run: go mod download && go mod tidy | |
- name: Check git diff | |
run: git diff --exit-code |