Files
ten31-database/docs/guides/packaging.md
T
Keysat 5cda84a7c0 Handoff: capture install-verify gotcha + config-placement convention
Docs-only: packaging guide notes start-cli install is silent on success (verify
with installed-version/logs); AGENTS.md adds the operational-toggles-in-the-admin-
panel convention and tightens the digest Current state.
2026-06-15 22:48:27 -05:00

37 lines
1.4 KiB
Markdown

---
paths:
- start9/**
---
# StartOS packaging & deploy
Read this before building or installing the s9pk. Live target is `start9/0.4/`.
## Bump the version FIRST — every build
Start9 0.4.x ignores a same-version rebuild (the install silently does nothing). Before `make`:
1. Edit `PACKAGE_VERSION` in `start9/0.4/startos/utils.ts`.
2. Add `start9/0.4/startos/versions/v0.1.0.NN.ts`.
3. Register it in `start9/0.4/startos/versions/index.ts`: import it, set it as `current`, and move the prior `current` into `other[]`.
## Build (x86_64 only)
```bash
cd start9/0.4 && make # -> ten-database_x86_64.s9pk
```
## Install — PRODUCTION
```bash
start-cli package install -s ten-database_x86_64.s9pk # target host = $START9_BOX_HOST
```
- `$START9_BOX_HOST` resolves from your local `start-cli` context config — the real hostname is **not** in this repo.
- **`install` prints nothing on success** (an empty log is normal, not a failure — and `${PIPESTATUS}` is a bash-ism, empty under this repo's zsh). Verify the deploy instead with:
```bash
start-cli package installed-version ten-database # expect the version you just built
start-cli package logs ten-database --limit 60 # expect server up on :8080 + a clean migration chain
```
- **Get explicit user authorization before any production deploy/install.** Verify a new migration against a **copy** of `data/crm.db` first, never the box's DB.