pressami
v0.4.20
Published
CLI per creare e gestire siti PressAmì — npx pressami create
Downloads
3,076
Maintainers
Readme
pressami — CLI
Strumento a riga di comando di PressAmì CMS: crea un nuovo sito, applica gli aggiornamenti (migrazioni core + plugin) e verifica la sicurezza dell'install.
npx pressami <comando>
# create → genera un nuovo install
# update → aggiorna un install esistente (migrazioni core+plugin, audit, versione)
# audit → verifica RLS + secretAggiornare un install — pressami update
Quando l'admin mostra il banner "Update disponibile", le migrazioni del core si applicano da qui (per scelta di sicurezza il core non si aggiorna dal browser: nessun privilegio DDL è esposto in rete). Le migrazioni dei plugin restano applicabili anche con un click dalla pagina Aggiornamenti.
Principio architetturale (no-door): l'aggiornamento è sempre iniziato dal cliente con le proprie credenziali. Il fornitore non ha alcun accesso permanente agli install: distribuisce artefatti, non entra. Il tuo database resta tuo.
Dentro un install (consigliato): npm run update
Ogni sito creato con pressami create include la CLI vendorizzata in vendor/cli/ e uno script pronto:
npm run update # = pressami update (interattivo: propone il Session pooler)A mano, ovunque: pressami update
Connessione: usa il Session pooler (IPv4)
⚠️ La connessione diretta
db.<ref>.supabase.coè servita da Supabase solo su IPv6. Su una normale rete IPv4 fallisce congetaddrinfo ENOTFOUND db.<ref>.supabase.co. Usa sempre la connection string del Session pooler (IPv4), che funziona ovunque.
Dove trovarla: Supabase → Database → Connect → Session pooler → copia la stringa.
npx pressami update --connection-string 'postgresql://postgres.<ref>:<password>@<region>.pooler.supabase.com:5432/postgres'Verifica senza applicare nulla (consigliato prima):
npx pressami update --connection-string '<...>' --dry-runSenza flag, il comando è interattivo e propone come default proprio la connection string del pooler.
In sintesi
--connection-string <str>— consigliato: la stringa del Session pooler (IPv4).--url <https://<ref>.supabase.co> --db-password <pwd>— connessione diretta (IPv6-only: spesso fallisce).--dry-run— mostra solo le migrazioni pending, non scrive nulla.--no-audit— salta l'audit di sicurezza finale.
A fine update: system.core_version aggiornato, audit certificato, 0 pending. Nell'admin premi
Aggiorna sulla pagina Aggiornamenti e il banner diventa verde.
