# CI Images

> Work with this repo’s GitHub Actions CI and GHCR Docker image publishing workflow. Use when changing generation checks, tests, formatting, or when preparing a release and validating image tags.

- Skill: `majiayu000/ci-images` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/ci-images`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/ci-images/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- License: MIT
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/ci-images

---


## Tooling assumptions

- Use a terminal runner with bash and git available.
- Prefer `make` targets when available; fall back to direct CLI commands when needed.

## CI overview (local equivalents)

The CI workflow enforces:

- generated code is up to date (templ + sqlc)
- gofmt formatting
- go vet
- go test

Local one-liners:

```bash
make generate
make fmt
make vet
make test
```

## Docker image publishing

Workflow: `.github/workflows/docker-publish.yml`

- Runs on GitHub Release publish (and manually via workflow_dispatch)
- Publishes to GHCR with tags:
  - semver `vX.Y.Z`
  - `X.Y`, `X`
  - `latest` on release

## Suggested pre-release checklist

```bash
make test
make validate-openapi
```

If you changed SQL/templ, ensure `make generate` output is committed.

