Give the dictionary a tactile retro-console identity #27
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: | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| name: Backend, embedded frontend, and docker checks | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| cache: 'pnpm' | |
| cache-dependency-path: frontend/pnpm-lock.yaml | |
| - name: Install frontend dependencies | |
| working-directory: frontend | |
| run: pnpm install --frozen-lockfile | |
| - name: Lint frontend | |
| working-directory: frontend | |
| run: pnpm lint | |
| - name: Build embedded frontend assets | |
| working-directory: frontend | |
| run: pnpm build | |
| - name: Setup Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: backend/go.mod | |
| check-latest: true | |
| - name: Verify backend | |
| working-directory: backend | |
| env: | |
| GOPROXY: https://goproxy.cn,direct | |
| GOSUMDB: off | |
| run: | | |
| go test ./... | |
| go vet ./... | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Verify single image build | |
| uses: docker/build-push-action@v6 | |
| with: | |
| context: . | |
| file: ./backend/Dockerfile | |
| platforms: linux/amd64 | |
| push: false | |
| load: false | |
| cache-from: type=gha | |
| cache-to: type=gha,mode=max |