name: ci on: [push, pull_request] jobs: go: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: { go-version-file: go.mod } - run: go vet ./... - run: go test ./... - name: cross-build run: | for a in amd64 arm64; do GOOS=linux GOARCH=$a go build -o /dev/null ./cmd/wxch-agent GOOS=linux GOARCH=$a go build -o /dev/null ./cmd/wxch-runner done go build -o /dev/null ./cmd/wxch-server shellcheck: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: shellcheck -S warning deploy/files/*.sh deploy/files/steps/*.sh installer: runs-on: ubuntu-latest strategy: fail-fast: false matrix: image: [ubuntu:22.04, ubuntu:24.04, debian:12, fedora:41, rockylinux:9, opensuse/tumbleweed, archlinux:latest] steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: { go-version-file: go.mod } - run: bash tests/installer/run.sh ${{ matrix.image }} amd64