name: CI on: push: branches: [main] pull_request: branches: [main] jobs: unit-tests: name: Go unit tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version: '1.23' - run: go version - run: go test -v ./... - name: Build files run: | go version CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags '-extldflags "-static"' -o croc.exe CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -ldflags '-extldflags "-static"' -o croc.exe CGO_ENABLED=0 GOOS=windows GOARCH=arm go build -ldflags '-extldflags "-static"' -o croc.exe CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go build -ldflags '-extldflags "-static"' -o croc.exe CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags '-extldflags "-static"' -o croc CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -ldflags '-extldflags "-static"' -o croc CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -ldflags '-extldflags "-static"' -o croc GOARM=5 CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -ldflags '-extldflags "-static"' -o croc CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -ldflags '-extldflags "-static"' -o croc CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -ldflags '-s -extldflags "-sectcreate __TEXT __info_plist Info.plist"' -o croc CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -ldflags '-s -extldflags "-sectcreate __TEXT __info_plist Info.plist"' -o croc CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=freebsd GOARCH=arm64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=netbsd GOARCH=386 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=netbsd GOARCH=arm64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 go build -ldflags '' -o croc CGO_ENABLED=0 GOOS=openbsd GOARCH=arm64 go build -ldflags '' -o croc - name: Setup Go uses: actions/setup-go@v5 with: go-version: '1.20.7' # go1.20.8+ refuses to build go1.22 code... - name: Build Windows 7 run: | go version rm go.mod go.sum go mod init github.com/schollz/croc/v10 go mod tidy CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -ldflags '-extldflags "-static"' -o croc.exe CGO_ENABLED=0 GOOS=windows GOARCH=386 go build -ldflags '-extldflags "-static"' -o croc.exe