Story: Infrastructure cleanup
Table of Contents
This page documents a story in Sprint 12. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Two unrelated infra cleanups: merge admin + template databases away in favour of RLS-based isolation; fix OSX CI with portable getopt.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 12 |
| Now | Completed 2026-02-12. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2026-02-12 |
Acceptance
ores_admin+ores_templatedatabases gone.- Two-phase create with least-privilege ddl user.
- OSX CI green.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Merge all databases into one | DONE | 2026-05-19 | 2026-02-11 | Remove ores_admin + ores_template dedicated databases; two-phase create (superuser then ores_ddl_user); centralised utility functions under ores_utility_ prefix. |
| Fix OSX build | DONE | 2026-05-19 | 2026-02-12 | Replace GNU getopt with portable while/case parsing in recreate_database.sh + recreate_env.sh; BSD getopt incompatibility resolved. |
Decisions
- RLS replaces template cloning
- now that RLS works, template cloning is dead weight.
- Portable bash, not GNU bash
- OSX CI matters; the script needs to work under BSD getopt too.
Out of scope
- Containerising the dev DB.
See also
None.