52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
name: Lint Check
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
- release/**
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
- release/**
|
|
permissions: read-all
|
|
jobs:
|
|
gofmt:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 5
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Setup Go Environment
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: '1.20.3'
|
|
- name: Run gofmt Check
|
|
working-directory: ./
|
|
run: |
|
|
diffs=`gofmt -l .`
|
|
if [[ -n $diffs ]]; then
|
|
echo "Files are not formatted by gofmt:"
|
|
echo $diffs
|
|
exit 1
|
|
fi
|
|
golint:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 10
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Setup Go Environment
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: '1.20.3'
|
|
- name: Install jq
|
|
run: sudo apt install -y jq
|
|
- uses: actions/setup-node@v3
|
|
with:
|
|
node-version: '16'
|
|
- name: Download golangci-lint
|
|
run: curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.54.2
|
|
- name: Run Golang Linters
|
|
working-directory: ./
|
|
run: |
|
|
PATH=${PATH}:$(go env GOPATH)/bin make lint
|