Story: Provisioning script library
Table of Contents
This page documents a story in Sprint 20. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Create the ores-shell script library decided by the design story: org-mode sources with detailed commentary on what each script does and what it expects, living in projects/ores.shell/scripts/ and tangled to runnable .ores scripts by an emacs batch-mode CMake target. The flagship script is provision_all.ores: connect, provision system (super_admin / Secure-Password-123), logout, login as tenant_admin, provision tenant (synthetic, fixed seed), logout/login, provision party by hard-coded full name, logout — an error-free run against a fresh database ends with a fully provisioned system. Closes with the manual chapter documenting shell provisioning. Depends on the Implement ores-shell provisioning commands story.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 20 |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-06-08 |
Acceptance
- The script library exists in projects/ores.shell/scripts/ as org-mode sources tangled to .ores scripts; tangled output is reproducible and never hand-edited.
- provision_all.ores runs clean against a fresh database and ends with a fully provisioned system, logins/logoffs included.
- An emacs batch CMake target tangles the library; the manual documents shell provisioning with the script as a worked example.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Create the script library in ores.shell | DONE | 2026-06-06 | 2026-06-07 | projects/ores.shell/scripts/: org-mode sources with commentary, tangled .ores outputs, conventions for future scripts. |
| Write the end-to-end provision_all script | DONE | 2026-06-06 | 2026-06-07 | The literate org script that provisions a complete system: super_admin, base system, tenant_admin, party — logins/logoffs included. |
| Add the emacs tangle CMake target | DONE | 2026-06-07 | 2026-06-07 | CMake target running emacs in batch mode to org-babel-tangle the script library. |
| Update the manual with provisioning from the shell | DONE | 2026-06-07 | 2026-06-07 | Document command-line provisioning in the user manual: the provision commands, the plumbing primitives, and the end-to-end script. Re-homed from the design story. |
| Display and manage the ores-shell script library in the Qt UI | DONE | 2026-06-07 | 2026-06-08 | The provisioning epic introduces a library of .ores scripts (org-mode tangled, in projects/ores.shell/scripts/). The Qt UI should be able to display the available scripts and manage/run them — e.g. a script browser alongside the embedded shell, showing each script's name, description (from its literate org commentary) and contents, with a way to execute one against the current session. Idea recalled from earlier discussions; no prior capture existed. |
| Connect to a TLS broker from the shell | DONE | 2026-06-08 | The shell connect command discards TLS and subject prefix, so you cannot connect to a secured broker from within the shell — blocking shell-driven provisioning before the Qt UI connects. |
Decisions
Out of scope
- Implementing the provisioning commands themselves — the Implement ores-shell provisioning commands story, which this story depends on.