add linter and improve some linting comments #19
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
# See https://fly.io/docs/app-guides/continuous-deployment-with-github-actions/ | |
name: Test | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
test: | |
name: "go test" | |
permissions: | |
id-token: write | |
contents: read | |
runs-on: "ubuntu-latest" | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
with: | |
lfs: true | |
- name: Get latest Go version | |
id: gover | |
run: echo goversion=$(awk -F':|-' '!/^#/ {print $2}' .github/dockerfile-for-dependabot/Dockerfile) >> "$GITHUB_OUTPUT" | |
- name: Setup go | |
uses: actions/setup-go@v5 | |
with: | |
cache: true | |
go-version: "${{ steps.gover.outputs.goversion }}" | |
- name: Test | |
run: | | |
go mod download | |
go test -race -coverprofile=coverage.txt -covermode=atomic | |
test-old: | |
name: Test / Go ${{ matrix.go }} | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
# These are the release channels. | |
# Hermit will handle installing the right patch. | |
go: ["1.20", "1.21", "1.22"] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Init Hermit | |
run: ./bin/hermit env -r >> "$GITHUB_ENV" | |
- name: Install Go ${{ matrix.go }} | |
run: | | |
hermit install go@"${GO_VERSION}" | |
go version | |
env: | |
GO_VERSION: ${{ matrix.go }} | |
- name: Test | |
run: go test ./... | |
test-windows: | |
name: Test / Windows / Go ${{ matrix.go }} | |
runs-on: windows-latest | |
strategy: | |
matrix: | |
# These are versions for GitHub's setup-go. | |
# '.x' will pick the latest patch release. | |
go: ["1.20.x", "1.21.x", "1.22.x"] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Setup Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ matrix.go }} | |
- name: Test | |
run: go test ./... | |
# lint: | |
# name: Lint | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: Checkout code | |
# uses: actions/checkout@v4 | |
# - name: Init Hermit | |
# run: ./bin/hermit env -r >> "$GITHUB_ENV" | |
# - name: golangci-lint | |
# run: golangci-lint run |