Add click new: AI site generation, platform-first with local fallback
#6
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
| # CI: build + the repo's real test suites. Testing here is end-to-end shell | |
| # suites against live Docker Compose stacks (there are no Go unit tests — | |
| # see CLAUDE.md), and GitHub's ubuntu runners ship docker compose, so CI | |
| # runs exactly what a developer runs: make up && make smoke, and | |
| # make up-auth && make smoke-auth. Nothing here publishes anything — | |
| # releases are the tag-triggered release.yml. | |
| name: ci | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| # Arch-agnostic static checks: one runner is enough. | |
| checks: | |
| runs-on: arc-amd64-runners | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| - run: go build ./... | |
| - run: go vet ./... | |
| - name: gofmt | |
| run: | | |
| out=$(gofmt -l ./cmd ./internal) | |
| if [ -n "$out" ]; then | |
| echo "gofmt needed on:" && echo "$out" | |
| exit 1 | |
| fi | |
| # The smoke suites test the containerized platform itself, so they run on | |
| # both architectures — the compose stack has to work on amd64 and arm64 | |
| # (Graviton) nodes alike. | |
| smoke-open: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| runner: [arc-amd64-runners, arc-arm64-runners] | |
| runs-on: ${{ matrix.runner }} | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| - run: make up | |
| - run: make smoke | |
| - name: stack logs | |
| if: failure() | |
| run: docker compose logs --tail 200 | |
| smoke-auth: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| runner: [arc-amd64-runners, arc-arm64-runners] | |
| runs-on: ${{ matrix.runner }} | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: actions/setup-go@v7 | |
| with: | |
| go-version-file: go.mod | |
| - run: make up-auth | |
| - run: make smoke-auth | |
| - name: stack logs | |
| if: failure() | |
| run: docker compose -f docker-compose.yml -f docker-compose.auth.yml logs --tail 200 |