71 lines
1.6 KiB
YAML
71 lines
1.6 KiB
YAML
name: Go
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- develop
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- develop
|
|
|
|
jobs:
|
|
lint:
|
|
name: Linter
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out code into the Go module directory
|
|
uses: actions/checkout@v2
|
|
|
|
- uses: actions/setup-go@v2
|
|
with:
|
|
go-version: '^1.15'
|
|
|
|
- name: Run golangci-lint
|
|
uses: golangci/golangci-lint-action@v2
|
|
with:
|
|
version: v1.44
|
|
only-new-issues: true
|
|
args: -c ./.golangci.yml
|
|
skip-go-installation: true
|
|
|
|
- name: Get dependencies
|
|
run: go mod download
|
|
|
|
- name: Run go vet
|
|
run: go vet ./...
|
|
|
|
- name: Install golint
|
|
run: bash -c "GOBIN=$(pwd) go get -u golang.org/x/lint/golint"
|
|
|
|
- name: Run golint
|
|
run: ./golint -set_exit_status -min_confidence 1.0 ./...
|
|
|
|
# golint is run (sufficiently; with excludes) as a part of golangci-lint.
|
|
# - name: Install golint
|
|
# run: bash -c "GOBIN=$(pwd) go get -u golang.org/x/lint/golint"
|
|
#
|
|
# - name: Run golint
|
|
# run: ./golint -set_exit_status -min_confidence 1.0 ./...
|
|
|
|
# gofmt is run (sufficiently; with excludes) as a part of golangci-lint.
|
|
# - name: Run gofmt
|
|
# run: bash -c 'test -z "$(gofmt -s -l .)"'
|
|
|
|
test:
|
|
name: Test
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Check out code into the Go module directory
|
|
uses: actions/checkout@v2
|
|
|
|
- uses: actions/setup-go@v2
|
|
with:
|
|
go-version: '^1.15'
|
|
|
|
- name: Get dependencies
|
|
run: go mod download
|
|
|
|
- name: Test
|
|
run: ./test --test-only
|