docs(readme): add interactive oblique code-map SVG (#54) #220
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] | |
| pull_request: | |
| branches: [main] | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| name: Build & Test | |
| runs-on: ubuntu-latest | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.6.0 | |
| with: | |
| # Latest 1.25 patch, not the exact go.mod floor: base 1.25.0 ships with | |
| # stdlib CVEs later patched in 1.25.9–.12, which the vuln scan flags. | |
| go-version: "1.25" | |
| check-latest: true | |
| cache: true | |
| - name: Check formatting | |
| run: test -z "$(gofmt -l .)" || (gofmt -l . && exit 1) | |
| - name: Build | |
| run: go build ./... | |
| - name: Vet | |
| run: go vet ./... | |
| - name: Build examples (separate module) | |
| run: cd _examples && go vet ./... | |
| - name: Vulnerability scan | |
| run: go run golang.org/x/vuln/cmd/govulncheck@latest ./... | |
| - name: Test (race + coverage) | |
| env: | |
| # Run the webhook drain-timing regression tests (otherwise skipped). | |
| BOTBOOTER_WHATSAPP_DRAIN_TIMING_TEST: "1" | |
| BOTBOOTER_TEAMS_DRAIN_TIMING_TEST: "1" | |
| BOTBOOTER_GITHUB_DRAIN_TIMING_TEST: "1" | |
| run: go test -race -covermode=atomic -coverprofile=coverage.txt ./... | |
| - name: Upload coverage to Codecov | |
| if: ${{ env.CODECOV_TOKEN != '' }} | |
| uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 | |
| with: | |
| files: ./coverage.txt | |
| token: ${{ env.CODECOV_TOKEN }} | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-go@40f1582b2485089dde7abd97c1529aa768e1baff # v5.6.0 | |
| with: | |
| go-version: "1.25" | |
| check-latest: true | |
| - uses: golangci/golangci-lint-action@82606bf257cbaff209d206a39f5134f0cfbfd2ee # v9.2.1 | |
| with: | |
| version: v2.12 |