#35: Updated README (#36) #53
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: | |
branches: ["main", "develop"] | |
pull_request: | |
branches: ["main", "develop"] | |
jobs: | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.21" | |
check-latest: true | |
- name: Install | |
run: go install mvdan.cc/gofumpt@latest | |
- name: Go Format | |
run: gofmt -s -w . && git diff --exit-code | |
- name: Gofumpt | |
run: gofumpt -l -w . && git diff --exit-code | |
- name: Go Vet | |
run: go vet ./... | |
- name: Go Tidy | |
run: go mod tidy && git diff --exit-code | |
- name: Go Mod | |
run: go mod download | |
- name: Go Mod Verify | |
run: go mod verify | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.21" | |
check-latest: true | |
- name: Build | |
run: go build -v ./... | |
static-checks: | |
name: Static Checks | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.21" | |
check-latest: true | |
- name: Install staticcheck | |
run: go install honnef.co/go/tools/cmd/staticcheck@latest | |
- name: Install nilaway | |
run: go install go.uber.org/nilaway/cmd/nilaway@latest | |
- name: GolangCILint | |
uses: golangci/golangci-lint-action@v3.4.0 | |
with: | |
version: latest | |
args: --timeout 5m | |
- name: Staticcheck | |
run: staticcheck ./... | |
# TODO: Ignore the issue in https://github.com/modelgateway/Glide/issues/32 | |
# - name: Nilaway | |
# run: nilaway ./... | |
tests: | |
name: Tests | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.21" | |
check-latest: true | |
- name: Test | |
run: go test -v -count=1 -race -shuffle=on -coverprofile=coverage.txt ./... |