ci: run vet, staticcheck, tests, race and generation check
- commit
- c927417da1f4b205772ad5862e8e31374751d18a
- author
- brice · · 2026-10-01 18:52 UTC
- parent
- 3908761
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
1 file · +30 -0
A .github/workflows/ci.yml +30 -0
| @@ -0,0 +1,30 @@ | |||
| 1 | + | name: CI | |
| 2 | + | on: | |
| 3 | + | push: | |
| 4 | + | branches: [main] | |
| 5 | + | pull_request: | |
| 6 | + | concurrency: | |
| 7 | + | group: ci-${{ github.ref }} | |
| 8 | + | cancel-in-progress: true | |
| 9 | + | jobs: | |
| 10 | + | # Arch ships the libxkbcommon the bindings are pinned against; the live | |
| 11 | + | # tests load it through purego. gcc is for the race detector. | |
| 12 | + | check: | |
| 13 | + | runs-on: ubuntu-latest | |
| 14 | + | container: | |
| 15 | + | image: archlinux:latest | |
| 16 | + | options: --init | |
| 17 | + | steps: | |
| 18 | + | - run: pacman -Syu --noconfirm --needed git go gcc libxkbcommon xkeyboard-config | |
| 19 | + | - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| 20 | + | with: | |
| 21 | + | persist-credentials: false | |
| 22 | + | - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" | |
| 23 | + | - run: CGO_ENABLED=0 go vet ./... | |
| 24 | + | - run: go run honnef.co/go/tools/cmd/staticcheck@latest ./... | |
| 25 | + | - run: CGO_ENABLED=0 go test -count=1 ./... | |
| 26 | + | - run: CGO_ENABLED=1 go test -race -count=1 ./... | |
| 27 | + | - name: generated code is current | |
| 28 | + | run: | | |
| 29 | + | GOWORK=off go generate ./... | |
| 30 | + | git diff --exit-code | |
| @@ -0,0 +1,30 @@ | |||||
| 1 | + | name: CI | |||
| 2 | + | on: | |||
| 3 | + | push: | |||
| 4 | + | branches: [main] | |||
| 5 | + | pull_request: | |||
| 6 | + | concurrency: | |||
| 7 | + | group: ci-${{ github.ref }} | |||
| 8 | + | cancel-in-progress: true | |||
| 9 | + | jobs: | |||
| 10 | + | # Arch ships the libxkbcommon the bindings are pinned against; the live | |||
| 11 | + | # tests load it through purego. gcc is for the race detector. | |||
| 12 | + | check: | |||
| 13 | + | runs-on: ubuntu-latest | |||
| 14 | + | container: | |||
| 15 | + | image: archlinux:latest | |||
| 16 | + | options: --init | |||
| 17 | + | steps: | |||
| 18 | + | - run: pacman -Syu --noconfirm --needed git go gcc libxkbcommon xkeyboard-config | |||
| 19 | + | - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |||
| 20 | + | with: | |||
| 21 | + | persist-credentials: false | |||
| 22 | + | - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" | |||
| 23 | + | - run: CGO_ENABLED=0 go vet ./... | |||
| 24 | + | - run: go run honnef.co/go/tools/cmd/staticcheck@latest ./... | |||
| 25 | + | - run: CGO_ENABLED=0 go test -count=1 ./... | |||
| 26 | + | - run: CGO_ENABLED=1 go test -race -count=1 ./... | |||
| 27 | + | - name: generated code is current | |||
| 28 | + | run: | | |||
| 29 | + | GOWORK=off go generate ./... | |||
| 30 | + | git diff --exit-code | |||