Skip to content

Improve installer defaults across platforms #23

Improve installer defaults across platforms

Improve installer defaults across platforms #23

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: read
jobs:
check:
strategy:
fail-fast: false
matrix:
go-version: ["1.25.4", "1.26.1"]
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
cache: true
- name: gofmt
if: runner.os != 'Windows'
shell: bash
run: |
files="$(git ls-files '*.go')"
test -n "${files}"
test -z "$(gofmt -l ${files})"
- name: go vet
run: go vet ./...
- name: go test
run: go test ./... -count=1
- name: go test -race
if: runner.os != 'Windows'
run: go test -race ./... -count=1
- name: CLI smoke
shell: bash
run: |
tmpdir="$(mktemp -d)"
trap 'rm -rf "${tmpdir}"' EXIT
binary="${tmpdir}/speedtest"
if [[ "${RUNNER_OS}" == "Windows" ]]; then
binary="${binary}.exe"
fi
go build -o "${binary}" ./cmd/speedtest
"${binary}" --help >/dev/null
"${binary}" --version >/dev/null