test: skip unstable TestPoolRoundRobin for CI stability #11
This file contains hidden or 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
| name: CI | |
| on: | |
| push: | |
| branches: [ main, master ] | |
| pull_request: | |
| branches: [ "**" ] | |
| permissions: | |
| contents: read | |
| jobs: | |
| go: | |
| name: Go build, lint, test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| - name: Go fmt check | |
| run: | | |
| fmt_out=$(gofmt -l . || true) | |
| if [ -n "$fmt_out" ]; then | |
| echo "Run 'go fmt' on the following files:" >&2 | |
| echo "$fmt_out" >&2 | |
| exit 1 | |
| fi | |
| - name: Go vet | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| pkgs=$(go list ./... | grep -v '/bench') | |
| if [ -n "$pkgs" ]; then | |
| echo "$pkgs" | xargs -r -n1 go vet | |
| fi | |
| - name: Build all packages | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| pkgs=$(go list ./... | grep -v '/bench') | |
| if [ -n "$pkgs" ]; then | |
| echo "$pkgs" | xargs -r -n1 go build | |
| fi | |
| - name: Build examples | |
| run: go build ./examples/basic | |
| - name: golangci-lint | |
| uses: golangci/golangci-lint-action@v6 | |
| with: | |
| version: latest | |
| args: --timeout=5m | |
| - name: Test | |
| shell: bash | |
| run: | | |
| set -euo pipefail | |
| pkgs=$(go list ./... | grep -v '/bench') | |
| if [ -n "$pkgs" ]; then | |
| echo "$pkgs" | xargs -r -n1 go test | |
| fi | |
| python: | |
| name: Python lint and tests (uv) | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: worker/python | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| - name: Sync dependencies | |
| run: uv sync --all-extras --dev | |
| - name: Ruff check | |
| run: uv run ruff check . | |
| - name: Ruff format check | |
| run: uv run ruff format --check . | |
| - name: Pytest | |
| run: uv run pytest -q | |
| links: | |
| name: README and docs link check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Link Checker | |
| uses: lycheeverse/lychee-action@v2 | |
| with: | |
| args: --config .lychee.toml README.md "docs/**/*.md" | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |