Build out the CLI with full package operations #126
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] | |
| jobs: | |
| unit-tests: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| - name: Build | |
| run: go build ./cmd/gpk | |
| - name: Vet | |
| run: go vet ./... | |
| - name: Unit tests | |
| run: go test ./tests/parsing/... ./internal/cli/... -v | |
| integration-macos: | |
| runs-on: macos-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| - uses: actions/setup-node@v5 | |
| with: | |
| node-version: 22 | |
| - name: Install package managers | |
| run: | | |
| pip3 install --break-system-packages pipx 2>/dev/null || true | |
| gem list --local > /dev/null | |
| - name: Integration tests | |
| run: go test ./tests/integration/... -v -timeout 120s | |
| integration-linux: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| cache: true | |
| - uses: actions/setup-node@v5 | |
| with: | |
| node-version: 22 | |
| - name: Install package managers | |
| run: | | |
| sudo apt-get update -qq | |
| pip3 install pipx 2>/dev/null || true | |
| cargo --version 2>/dev/null || true | |
| gem list --local > /dev/null 2>&1 || true | |
| - name: Integration tests | |
| run: go test ./tests/integration/... -v -timeout 120s |