Project: Backend for Red Hat's content sources service (Go + PostgreSQL)
Frontend: https://github.com/content-services/content-sources-frontend
See docs/architecture.md for a description of the service and its architecture.
- Requires podman/docker with compose
- Copy
configs/config.yaml.exampletoconfigs/config.yaml - Run
make helpto see available targets - See README.md for full setup instructions
| Area | Typical paths |
|---|---|
| REST API handlers | pkg/handler/ |
| API route definitions | pkg/router/ |
| Data access (DAO) layer | pkg/dao/ |
| Domain models | pkg/models/ |
| Background tasks/workers | pkg/tasks/ |
| Kafka integration | pkg/kafka/ |
| RBAC / middleware | pkg/rbac/, pkg/middleware/ |
| Configuration | pkg/config/ |
| Database migrations | db/migrations/ |
| OpenAPI spec | api/ |
| CLI entrypoints | cmd/ |
| Compose / containers | compose_files/, build/ |
| Deployment (ClowdApp) | deployments/ |
| Integration / API tests | _playwright-tests/, test/ |
- Match existing Go style, package layout, and patterns in the touched area.
- Keep changes minimal and scoped to the task; avoid drive-by refactors.
- PRs should come with good tests.
- SQL migrations must be non-destructive (see CONTRIBUTING.md for the two-stage migration approach).
- PR titles should reference the tracking ticket:
<JIRA Number>: description - See CONTRIBUTING.md for full details.