fix(status): count private skills separately from libraries #79
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: | |
| lint: | |
| name: Lint | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25' | |
| cache: true | |
| - name: gofmt | |
| run: | | |
| fmt_out=$(gofmt -l .) | |
| if [ -n "$fmt_out" ]; then | |
| echo "gofmt found unformatted files:" | |
| echo "$fmt_out" | |
| exit 1 | |
| fi | |
| - name: go vet | |
| run: go vet ./... | |
| - name: golangci-lint | |
| uses: golangci/golangci-lint-action@v6 | |
| with: | |
| # Build from source with the setup-go toolchain (go1.25). The | |
| # prebuilt "latest" binary is built with an older Go and refuses a | |
| # config targeting a newer Go ("language version used to build | |
| # golangci-lint is lower than the targeted Go version"). v1.64.8 is | |
| # the last v1 release and matches the v1-format .golangci.yml. | |
| version: v1.64.8 | |
| install-mode: goinstall | |
| args: --timeout=5m | |
| test: | |
| name: Test (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25' | |
| cache: true | |
| - name: Test (race) | |
| shell: bash | |
| run: go test -race -coverprofile=coverage.out -covermode=atomic ./... | |
| - name: Coverage summary | |
| if: matrix.os == 'ubuntu-latest' | |
| shell: bash | |
| run: go tool cover -func=coverage.out | tail -1 | |
| - name: Upload coverage | |
| if: matrix.os == 'ubuntu-latest' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage | |
| path: coverage.out | |
| build: | |
| name: Build (${{ matrix.goos }}/${{ matrix.goarch }}) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| include: | |
| - { goos: darwin, goarch: arm64 } | |
| - { goos: darwin, goarch: amd64 } | |
| - { goos: linux, goarch: arm64 } | |
| - { goos: linux, goarch: amd64 } | |
| - { goos: windows, goarch: amd64 } | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version: '1.25' | |
| cache: true | |
| - name: Build | |
| env: | |
| GOOS: ${{ matrix.goos }} | |
| GOARCH: ${{ matrix.goarch }} | |
| CGO_ENABLED: '0' | |
| run: go build -ldflags '-s -w' -o adept ./cmd/adept |