kampodra 0.8.6 → 0.8.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kampodra",
3
- "version": "0.8.6",
3
+ "version": "0.8.8",
4
4
  "description": "Registry-free deployment CLI for single-VM container stacks over SSH (Podman + kamal-proxy)",
5
5
  "license": "AGPL-3.0",
6
6
  "type": "module",
@@ -8,10 +8,10 @@
8
8
  "kampodra": "bin/kampodra.js"
9
9
  },
10
10
  "optionalDependencies": {
11
- "@kampodra/darwin-arm64": "0.8.6",
12
- "@kampodra/darwin-x64": "0.8.6",
13
- "@kampodra/linux-arm64": "0.8.6",
14
- "@kampodra/linux-x64": "0.8.6"
11
+ "@kampodra/darwin-arm64": "0.8.8",
12
+ "@kampodra/darwin-x64": "0.8.8",
13
+ "@kampodra/linux-arm64": "0.8.8",
14
+ "@kampodra/linux-x64": "0.8.8"
15
15
  },
16
16
  "engines": {
17
17
  "node": ">=20"
@@ -111,12 +111,30 @@ KAMPODRA_DB_ENGINE > file magic):
111
111
  (KAMPODRA_DB_NAME/HOST/USER/PASSWORD via `kampodra env set`), staged to
112
112
  a 0600 defaults file, never argv; snapshot = mariadb-dump
113
113
  --single-transaction with a "Dump completed" tail gate. Prefer a
114
- read-only role (GRANT SELECT) for agent queries.
114
+ read-only role (GRANT SELECT) for agent queries — `db grant-ro`
115
+ provisions it (mariadb executes; postgres prints the SQL). Podman
116
+ container deployments (the estate's shape): no host client needed —
117
+ tools run via `podman exec` in-container, and snapshots take the
118
+ PHYSICAL form (in-container mariabackup → prepare → tar, gated on the
119
+ control files; restore with mariabackup --copy-back).
120
+ - **postgres** — same env-file contract as mariadb; PGPASSFILE staged
121
+ 0600; `psql --csv` (quoted values; NULLs render empty); pg_dump
122
+ MVCC-consistent with a completeness tail gate; container mode via
123
+ `podman exec --user postgres`.
115
124
  - **libsql (self-hosted sqld)** — no --db needed; KAMPODRA_DB_URL
116
125
  (default localhost:8080) + optional KAMPODRA_DB_TOKEN, staged to a 0600
117
126
  header file; rows as flat JSON (same shape as sqlite); snapshot needs
118
127
  KAMPODRA_DB_PATH and gates on PRAGMA integrity_check.
119
128
 
129
+ Server engines on their own VM: `--db-host` / profile `dbHost` moves the
130
+ flows' ssh to the DB VM (its env file carries the creds). TSV engines
131
+ emit string values (batch text has no types); file engines emit typed
132
+ JSON.
133
+
134
+ `kampodra db grant-ro --db <schema>` provisions the read-only role:
135
+ mariadb executes end-to-end (random password, env keys written on the
136
+ VM, password never printed); `--engine postgres` prints the ready SQL.
137
+
120
138
  The gate rejects non-SELECT/WITH statements (exit 2) BEFORE any ssh on
121
139
  every engine — a rejected statement costs zero round-trips.
122
140